Information providing apparatus, transmission system, information providing method, and recording medium storing information providing program

ABSTRACT

An information providing apparatus sends an image forming instruction to an image forming apparatus to cause the image forming apparatus to form an image to generate image data and transmit the image data to the information providing apparatus, stores the image data received from the image forming apparatus in a memory area of a memory, and stores identification information that uniquely identifies the image data and information indicating the memory area to which the image data is stored in association with each other to generate management information in the memory.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is a continuation application of and claims thebenefit of priority under 35 U.S.C. §120 from U.S. application Ser. No.14/869,429, filed Sep. 29, 2015, which is a continuation of U.S.application Ser. No. 13/605,056, now U.S. Pat. No. 9,191,528, filed Sep.6, 2012, which is based on and claims priority pursuant to 35 U.S.C.§119 to Japanese Patent Application Nos. 2011-202991, filed on Sep. 16,2011, and 2012-152976, filed on Jul. 6, 2012, in the Japan PatentOffice, the entire contents of all of which are hereby incorporatedherein by reference.

BACKGROUND

1. Field

The present invention generally relates to an information providingapparatus, a transmission system including the information providingapparatus, an information providing method, and an information providingprogram stored in a recording medium.

2. Background

The recent communication system allows transmission of data among aplurality of communication terminals that are remotely located from oneanother through a relay device to facilitate communication among theplurality of communication terminals through a communication networksuch as the Internet. The communication system transmits image data thatis captured at each terminal using a camera and sound data that iscollected at each terminal using a microphone, from one communicationterminal to the other communication terminal.

In addition to the image data and the sound data, the communicationsystem may transmit a screen of presentation materials that is displayedat one communication terminal, to the other communication terminal suchthat data of the screen being displayed at one terminal is shared withthe other terminal.

For example, Japanese Patent Application Publication No. 2009-135865,and the corresponding U.S. Patent Application Publication No.2009/0052348 disclose an image processing apparatus, which can easilyestablish wireless communication with a mobile terminal such that themobile terminal transmits data to be shared to the image processingapparatus.

SUMMARY

The inventor of the present invention has discovered that, while theabove-described technique allows the user to easily transmit the imagedata displayed at the mobile terminal to the communication terminal, theuser may want to share image data of a paper document with the otherusers of the communication system. In such case, the user needs to scanthe paper document into scanned image data using a network scanner,enter a destination address to which the scanned image data istransmitted such as an address of the mobile terminal, and causes thenetwork scanner to transmit the scanned image data to the mobileterminal. The user needs to further search through a memory of themobile terminal for the scanned image data, and transmits the scannedimage data to the communication terminal. Accordingly, sharing thescanned image data with the other users has been cumbersome, especiallywhen the user realizes that there is a presentation material to beshared with the other users in the middle of videoconference.

In view of the above, one aspect of the present invention is to providean information providing apparatus, a transmission system, aninformation providing method, and an information providing programstored in a recording medium, each of which allows the user to easilyobtain scanned image data of an original document and distribute thescanned image data to the other users.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete appreciation of the disclosure and many of the attendantadvantages and features thereof can be readily obtained and understoodfrom the following detailed description with reference to theaccompanying drawings, wherein:

FIG. 1 is a schematic block diagram illustrating a configuration of atransmission system, according to an example embodiment of the presentinvention;

FIG. 2 is a hardware structure of a transmission terminal of thetransmission system of FIG. 1, according to an example embodiment of thepresent invention;

FIG. 3 is a hardware structure of an information providing apparatus ofthe transmission system of FIG. 1, according to an example embodiment ofthe present invention;

FIG. 4 is a hardware structure of an image forming apparatus of thetransmission system of FIG. 1, according to an example embodiment of thepresent invention;

FIG. 5 is a functional structure of the transmission terminal, theinformation providing apparatus, and the image forming apparatus of thetransmission system of FIG. 1, according to an example embodiment of thepresent invention;

FIG. 6 is an example data structure of a management table, managed bythe transmission terminal of FIG. 5;

FIG. 7 is an example data structure of an authentication table, managedby the transmission terminal of FIG. 5;

FIG. 8 is an illustration for explaining a communication range of twotypes of communication established between the transmission terminal andthe information providing apparatus;

FIG. 9 is an illustration for explaining a communication range of twotypes of communication established between the image forming apparatusand the information providing apparatus;

FIG. 10 is an example data structure of a file management table, managedby the information providing apparatus of FIG. 5;

FIG. 11 is an example data structure of an authentication table, managedby the image forming apparatus of FIG. 5;

FIG. 12 is an example screen displayed on a display of the transmissionterminal, which includes captured image data;

FIG. 13 is an example screen displayed on the display of thetransmission terminal, which includes captured image data and displaydata;

FIG. 14 is an example screen displayed on the display of thetransmission terminal, which includes display data;

FIG. 15 is an example login screen displayed on a display of theinformation providing apparatus;

FIG. 16 is an example navigation screen displayed on the display of theinformation providing apparatus;

FIGS. 17A, 17B, and 18 are a flowchart illustrating operation ofestablishing communication and processing data, performed by theinformation providing apparatus and the image forming apparatus of thetransmission system of FIG. 5, according to an example embodiment of thepresent invention;

FIG. 19 is an example error screen displayed on the display of theinformation providing apparatus;

FIG. 20 is an example login screen displayed on the display of theinformation providing apparatus;

FIG. 21 is an example navigation screen displayed on the display of theinformation providing apparatus;

FIG. 22 is a data sequence diagram illustrating operation of executingdisplay data obtaining program from the memory of the transmissionterminal onto the information providing apparatus, according to anexample embodiment of the present invention;

FIG. 23 is an example error screen displayed on the display of theinformation providing apparatus;

FIG. 24 is a flowchart illustrating operation of selecting electronicdata as display data to be transmitted to the transmission terminal,performed by the information providing apparatus, according to anexample embodiment of the present invention;

FIG. 25 is an example screen, which lists one or more data files foruser selection, displayed by the display of the information providingapparatus;

FIG. 26A is an example screen, displayed on the display of theinformation providing apparatus, which includes a start button to allowthe user to start transmission of display data;

FIG. 26B is an example screen, displayed on the display of theinformation providing apparatus, which includes a start button to allowthe user to start transmission of display data;

FIG. 27 is a data sequence diagram illustrating operation oftransmitting display data from the information providing apparatus tothe terminal, performed by the transmission system of FIG. 5, accordingto an example embodiment of the present invention;

FIG. 28A is an example screen, displayed on the display of theinformation providing apparatus, which includes a stop button to allowthe user to stop transmission of display data;

FIG. 28B is an example screen, displayed on the display of theinformation providing apparatus, which includes a stop button to allowthe user to stop transmission of display data;

FIG. 29 is a data sequence diagram illustrating operation of switchingdisplay data to be transmitted, performed by the transmission system ofFIG. 5, according to an example embodiment of the present invention;

FIG. 30 is a data sequence diagram illustrating operation of stoppingtransmission of display data, performed by the transmission system ofFIG. 5, according to an example embodiment of the present invention;

FIG. 31 is a schematic block diagram illustrating functional structuresof the transmission terminal, the information providing apparatus, andthe image forming apparatus of FIG. 1, according to an exampleembodiment of the present invention;

FIG. 32 is an example data structure of a location data managementtable, managed by the terminal of FIG. 31;

FIG. 33 is an example screen displayed by the terminal of FIG. 31;

FIG. 34 is an example data structure of association informationindicating an association between the location data and layout of imagedata to be displayed on the screen of FIG. 33;

FIG. 35 is an illustration for explaining the transitional change instate of location data;

FIG. 36 is an example data structure of an event flag table, managed bythe terminal of FIG. 31,

FIG. 37A is an illustration for explaining the transitional change inmenu being displayed on the display of the information providingapparatus of FIG. 31;

FIG. 37B is an example data structure of association informationindicating an association between the value of display control flag andshared state information;

FIG. 38 is a data sequence diagram illustrating operation of startingtransmission of display data from the information providing apparatus tothe terminal, performed by the transmission system of FIG. 31, accordingto an example embodiment of the present invention;

FIGS. 39A to 39D are example screens, displayed on the display of theinformation providing apparatus;

FIG. 40 is a data sequence diagram illustrating operation of switchingdisplay data to be transmitted, performed by the transmission system ofFIG. 31, according to an example embodiment of the present invention;

FIG. 41 is a flowchart illustrating operation of determining whether tosend a distribution end request to the relay device, performed by theterminal of FIG. 31;

FIG. 42 is a flowchart illustrating operation of determining whether tosend a distribution end event or a distribution end from another eventto the terminal, performed by the relay device of FIG. 31, according toan example embodiment of the present invention; and

FIG. 43 is a data sequence diagram illustrating operation of stoppingtransmission of display data, performed by the transmission system ofFIG. 31, according to an example embodiment of the present invention.

The accompanying drawings are intended to depict example embodiments ofthe present invention and should not be interpreted to limit the scopethereof. The accompanying drawings are not to be considered as drawn toscale unless explicitly noted.

DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the presentinvention. As used herein, the singular forms “a”, “an” and “the” areintended to include the plural forms as well, unless the context clearlyindicates otherwise. It will be further understood that the terms“includes” and/or “including”, when used in this specification, specifythe presence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

In describing example embodiments shown in the drawings, specificterminology is employed for the sake of clarity. However, the presentdisclosure is not intended to be limited to the specific terminology soselected and it is to be understood that each specific element includesall technical equivalents that operate in a similar manner.

Referring now to FIGS. 1 to 30, a transmission system is explainedaccording to an example embodiment of the present invention.

FIG. 1 illustrates a configuration of a transmission system 1 accordingto an example embodiment of the present invention. The transmissionsystem 1 includes a plurality of transmission terminals, which areremotely located and are connected through a network.

In one example, the transmission system 1 functions as a data providingsystem that transmits electronic data from one transmission terminal toanother transmission terminal in one direction through a transmissionmanagement system 50. In another example, the transmission system 1functions as a two-way communication system that exchanges variousinformation including image data and/or sound data that is used toconvey human's feelings between or among two or more of a plurality oftransmission terminals 10 each of which functioning as a communicationterminal, through the transmission management system 50 that functionsas a communication management system. When functioning as thecommunication system, the transmission system 1 may be implemented as avideoconference system, video teleconference system, voice conferencesystem, voice teleconference system, or personal computer screen sharingsystem.

In the following examples, it is assumed that the transmission system 1of FIG. 1 is implemented as the videoconference system, which is oneexample structure of the communication system. Based on this assumption,the transmission management system 50 is implemented as thevideoconference communication management system, which is one examplestructure of the communication management system. Further, thetransmission terminal 10 is implemented as the videoconferencecommunication terminal, which is one example structure of thecommunication terminal. However, the use of transmission system 1 is notlimited to the following examples such that the transmission system 1may be implemented as the transmission system or the communicationsystem as described above.

The transmission system 1 of FIG. 1 includes a plurality of transmissionterminal 10 aa, 10 ab, 10 ba, 10 bb, 10 ca, 10 cb, 10 da, and 10 db, anda plurality of displays 130 aa, 130 ab, 130 ba, 130 bb, 130 ca, 130 cb,130 da, and 130 db, a plurality of information providing apparatuses 30a, 30 b, 30 c, and 30 d, a plurality of relay devices 40 a, 40 b, 40 c,and 40 d, an image forming apparatus 80, the transmission managementsystem 50, a plurality of routers 60 a, 60 b, 60 ab, 60 c, 60 d, and 60cd, and a program providing system 70.

For the descriptive purposes, in this example, any number of theplurality of terminals 10 aa to 10 db may be collectively or eachreferred to as the terminal 10. Any number of the plurality of displays130 aa to 130 db may be collectively or each referred to as the display130. Any number of the plurality of information providing apparatuses 30a, 30 b, 30 c, and 30 d may be collectively or each referred to as theinformation providing apparatus 30. Any number of the plurality of relaydevices 40 a, 40 b, 40 c, and 40 d may be collectively or each referredto as the relay device 40. Any number of the plurality of routers 60 ato 60 cd may be collectively or each referred to as the router 60. Thetransmission management system 50 may be referred to as the “managementsystem” 50.

The transmission terminal 10 transmits or receives conference data suchas image data (captured image data or display data) and/or sound data toor from another transmission terminal 10. The information providingapparatus 30 provides conference data such as display data incooperation with the transmission terminal 10. The image formingapparatus 80 is implemented by a multifunctional peripheral (MFP) suchthat it may be referred to as the MFP 80.

In this example, the conference data includes any data or informationthat may be shared among the terminals 10, for example, duringvideoconference. Examples of the conference data include image data ofan object such as a sample product to be displayed to participatingusers, image data of the participating users such as captured imagedata, image data of presentation materials that may be distributed tothe participating users in the paper form, image data of presentationmaterials to be displayed through a display of the transmission system1, and sound data collected by the terminal 10 such as voices of theparticipating users. As the conference data, any one of image data andsound data is transmitted. In case only the image data is transmitted,sounds such as voices of the user who is speaking may be displayed intext data, such as in the form of subtitle or caption along with theimage data of the user. Further, in this example, it is assumed that amoving image is transmitted as the image data. Alternatively, a stillimage, or both of the still image and the moving image, may betransmitted as the image data.

The information providing apparatus 30 may be implemented by any desiredportable device including, for example, a portable phone, a notepersonal computer (PC), a smart phone, a digital camera, a digital videocamera, a game machine, etc. The information providing apparatus 30communicates with the transmission terminal 10 and the MFP 80 usingdifferent types of communication method, and transmits display data tothe terminal 10. In this example, the display data is any image datathat reflects a screen being displayed on a display of the informationproviding apparatus 30 including, for example, image data that isselected by the user at the information providing apparatus 30 asconference data to be shared among the terminals 10. For example, theinformation providing apparatus 30 may be previously installed withapplication software such as document creation application, spreadsheetapplication, presentation application, email generating application, orbrowser application. Using the application available to the informationproviding apparatus 30, the information providing apparatus 30 displaysa screen specifying or showing image data to be shared among theterminals 10 on a display 306 (FIG. 3), for example, as a still image ora moving image. In this example illustrated in FIG. 1, there is only oneinformation providing apparatus 30 for each site, or for each office.Alternatively, any desired number of information providing apparatus 30may be provided at one site at a time, as the information providingapparatus 30, which is a portable device in this example, moves as theuser moves from one site to another. Further, one information providingapparatus 30 may be communicated with any desired terminal 10.

Further, for the descriptive purposes, any image data that is obtainedby the terminal 10 is referred to as the image data. Any image data thatis provided by the information providing apparatus 30 to the terminal 10is referred to as the display data. Any one of the image data and thedisplay data may be shared among the terminals 10 as conference data.

The MFP 80 is provided with a plurality of functions including copyfunction, scanner function, printer function, facsimiletransmission/reception function, and data storage function (document boxfunction). Alternatively, the image forming apparatus 80 may beimplemented by any other desired image forming apparatus provided withthe scanner function such as a scanner apparatus, or the MFP providedwith the scanner function and the printer function.

In this example, the user remotely controls the MFP 80 using theinformation providing apparatus 30 to instruct the MFP 80 to performspecific processing on specific image data. In one example, the userrequests the MFP 80 to scan a paper document into scanned image data,and send the scanned image data to the information providing apparatus30, through the information providing apparatus 30. For example, inorder to instruct the MFP 80 through the information providing apparatus30, the user brings the information providing apparatus 30 into closeproximity to the MFP 80 or touches the MFP 80 with the informationproviding apparatus 30. The information providing apparatus 30 storesthe scanned image data, received from the MFP 80, in a predeterminedmemory area of the information providing apparatus 30. The informationproviding apparatus 30 registers a file name of the scanned image dataand information indicating the predetermined memory area in which thedata is stored, in a file management table in a manner that areassociated with each other. At any desired time, the user selects thescanned image data from the predetermined memory area as image data tobe shared with the other users, and instructs the information providingapparatus 30 to transmit the selected data to the terminal 10. Forexample, the user brings the information providing apparatus 30 intoclose proximity to the terminal 10 or touches the terminal 10 with theinformation providing apparatus 30, and instructs the informationproviding apparatus 30 to transmit the selected data to the terminal 10as image data to be shared. The terminal 10 manages the data receivedfrom the information providing apparatus 30 as conference data to beshared among a plurality of terminals 10 during videoconference.

The relay device 40 relays communication between or among the terminals10. For example, during videoconference, the relay device 40 relaysconference data to be shared between or among the terminals 10. Further,in this example, when the relay device 40 detects any delay in receptionof conference data that is transmitted from one terminal 10 via therelay device 10 at the counterpart terminal 10, the relay device 40changes resolution of image data to be transmitted, and transmitsconference data including the lower-resolution image data to thecounterpart terminal 10. As a size of data to be transmitted is reduced,delay in reception of conference data can be suppressed such thatconference data, especially, image data is displayed more seamlessly.

The management system 50 centrally manages the terminal 10 and the relaydevice 40. More specifically, the management system 50 manages variousinformation such as the operation state of the terminal 10 and theoperation state of the relay device 40. For example, the managementsystem 50 registers the terminal 10 to the transmission system 1,manages a terminal ID and an IP address of the terminal 10, manages dataregarding the charge fee for the terminal 10, sends informationregarding candidate counterpart terminals 10 to the terminal 10 beforethe terminal 10 starts videoconference, keeps update of the operationstate of the terminal 10, and sends information regarding the operationstate of the terminal 10 to another terminal 10. The operation state ofthe terminal 10 indicates, for example, whether the terminal 10 isonline or offline, the terminal 10 is having videoconference, or theterminal 10 is in the error state.

The router 60 connects a plurality of networks, and selects a route thatis most suitable for transmitting conference data such as image data andsound data.

The program providing system 70 includes a hard disk device (HD), whichstores a terminal control program that causes the terminal 10 to performvarious functions or operations. For example, the program providingsystem 70 sends the terminal control program to the terminal 10 throughthe Internet 2 i to cause the terminal 10 to install the terminalcontrol program. Further, the HD of the program providing system 70 maystore an information providing control program that causes theinformation providing apparatus 30 to perform various functions oroperations such as providing data to the outside apparatus. The programproviding system 70 sends the information providing control program tothe information providing apparatus 30 through the Internet 2 i to causethe information providing apparatus 30 to install the informationproviding control program. Further, the HD of the program providingsystem 70 may store a relay control program that causes the relay device40 to perform various functions or operations. For example, the programproviding system 70 sends the relay control program to the relay device40 through the Internet 2 i to cause the relay device 40 to install therelay control program. Further, the HD 204 of the program providingsystem 70 may store a transmission management program that causes themanagement system 50 to perform various functions or operations. Forexample, the program providing system 70 sends the transmissionmanagement program to the management system 50 to cause the managementsystem 50 to install the transmission management program.

Still referring to FIG. 1, the terminals 10 aa and 10 ab, the relaydevice 40 a, and the router 60 a are connected to a local area network(LAN) 2 a. The terminals 10 ba and 10 bb, the relay device 40 b, and therouter 60 b are connected to a LAN 2 b. The LAN 2 a and the LAN 2 b areconnected to a leased line 2 ab in which the router 60 ab is provided.It is assumed that these devices including the terminals 10 aa to 10 bbare located in an area A. For example, assuming that the area is anyarea in Japan, the LAN 2 a could be located within an office in a citysuch as Tokyo, and the LAN 2 b could be located within an office inanother city such as Osaka.

The terminals 10 ca and 10 cb, the MFP 80, the relay terminal 40 c, andthe router 60 c are connected to a LAN 2 c. The terminals 10 da and 10db, the relay device 40 d, and the router 60 d are connected to a LAN 2d. The LAN 2 c and the LAN 2 d are connected to a leased line 2 cd inwhich the router 60 cd is provided. It is assumed that these devicesincluding the terminals 10 ca to 10 db are located in an area B apartfrom the area A. For example, assuming that the area is any area in theUnited States, the LAN 2 c could be located within an office in a citysuch as New York, and the LAN 2 d could be located within an office inanother city such as Washington, D.C. The area A and the area B areconnected through the Internet 2 i, via the routers 60 ab and 60 cd.

In FIG. 1, the MFP 80 is located in the area B. Alternatively, the MFP80 may be located in the area A. As long as the MFP 80 can becommunicated with the information providing apparatus 30, the MFP 80 maybe provided as a stand-alone machine without being connected to the LAN2 c. In such case, the MFP 80 may be communicated with another device inthe system through a wireless network.

The management system 50 and the program providing system 70 areconnected through the Internet 2 i to the terminal 10 and the relaydevice 40. Any one of the management system 50 and the program providingsystem 70 may be located at any location within or outside any one ofthe area A and the area B.

In this example, the communication network 2 includes the LAN 2 a, LAN 2b, leased line 2 ab, Internet 2 i, leased line 2 cd, LAN 2 c, and LAN 2d. Any one or any portion of these lines or any other lines that may beincluded in the communication network 2 may be implemented as wirednetwork or wireless network such as Wireless Fidelity (WiFi) network orBluetooth network.

Now, hardware structures of the terminal 10, the information providingapparatus 30, and the MFP 80 are respectively described below.

FIG. 2 illustrates an example hardware structure of the terminal 10. Asillustrated in FIG. 2, the terminal 10 includes a central processingunit (CPU) 101, a read only memory (ROM) 102, a random access memory(RAM) 103, a flash memory 104, a solid state drive (SSD) 105, a mediumdrive 107, an operation button (keys) 108, a power switch 109, a networkinterface (I/F) 110, a first communication interface (I/F) 111, a secondcommunication I/F 112, a camera 113, a camera interface (I/F) 114, amicrophone 115, a speaker 116, a sound input/output interface (I/O I/F)117, a display interface (I/F) 118, and an external device connectioninterface (I/F) 119, which are electrically connected through a bus 120such as an address bus or data bus.

The CPU 101 controls entire operation of the terminal 10. The ROM 102stores therein a control program for execution by the CPU 101, such asan initial program loader (IPL). The RAM 103 functions as a work area ofthe CPU 101. The flash memory 104 stores therein various data such asthe terminal control program, image data, or sound data such as voicedata. The SSD 105 controls reading or writing of various data withrespect to the flash memory 104 under control of the CPU 101. The mediumdrive 107 controls reading or writing of various data with respect to aremovable recording medium 106 such as a flash memory or a memory card.The operation button 108 allows the user to input a user instruction,for example, by allowing the user to select a communication destinationsuch as the counterpart terminal 10. The power switch 109 allows theuser to switch on or off the power of the terminal 10. The network I/F110 allows the terminal 10 to transmit data through the communicationnetwork 2.

The first communication I/F 111 and the second communication I/F 112each allow the terminal 10 to transmit or receive various data to orfrom the outside apparatus such as the information providing apparatus30. The first communication I/F 111 is in compliance with a non-contactIC wireless communication standards such as Near Field Communication(NFC). The second communication I/F 112 is in compliance with theBluetooth communication standards.

The camera 113 takes an image of an object to obtain image data undercontrol of the CPU 101. The camera I/F 114 controls operation of thecamera 113, and transmit or receives image data captured by the camera113. The camera 113 includes a plurality of devices such as a lenssystem, and a solid-state image sensing device that photo-electricallyconverts a light to generate an image of an object. For example, thesolid-state image sensing device includes a complementary metal oxidesemiconductor (CMOS) or a charge coupled device (CCD). In alternative toincorporating the camera 113 in the terminal 10, the camera 113 may beprovided outside of the terminal 10 as an external device that may beconnected to the camera I/F 114 through a Universal Serial Bus (USB)cable.

The microphone 115 catches sounds such as voice of the user at theterminal 10 or any sounds that may be collected including noises. Thespeaker 116 outputs sounds such as sounds generated based on voice ofthe user at the counterpart terminal 10. The sound I/O I/F 117 controlsinput or output of sound signals such as voice signals with respect tothe microphone 115 and the speaker 116 under control of the CPU 101. Incase the microphone 115 and the speaker 116 are provided outside theterminal 10, the microphone 115 and the speaker 116 may be connected tothe sound I/O I/F 117 through such as a USB cable.

The display I/F 118 transmits image data to the display 130 undercontrol of the CPU 101. The display 130 is connected to the display I/F118 through a cable 130 c. The cable 130 c may be implemented by ananalog RGB (VGA) signal cable, a component video cable, ahigh-definition multimedia interface (HDMI) signal cable, or a digitalvideo interactive (DVI) signal cable. In alternative to connecting thedisplay 130 with the display I/F 118, the terminal 10 may be connectedwith a projector that projects an image through the display I/F 118.

The external device connection I/F 119 controls connection of theterminal 10 to various types of outside device. The external deviceconnection I/F 119 may be connected to an outside device such as anexternal camera, external microphone, or external speaker through auniversal serial bus (USB) cable that is connected through a port of theterminal 10. When the external camera is connected to the terminal 10,the CPU 101 causes the terminal 10 to capture an image using theexternal camera, in priority to or in replace of the camera 113 that isincorporated in the terminal 10. When the external microphone or theexternal speaker is connected to the terminal 10, the CPU 101 causes theterminal 10 to use the external microphone or the external speaker inpriority to or in replace of the incorporated microphone 115 or theincorporated speaker 116.

The recording medium 106, which can be freely attached to or detachedfrom the terminal 10, includes any desired type of recording medium. Inalternative to the flash memory 104, any nonvolatile memory that isreadable and writable under control of the CPU 101 may be used such asElectrically Erasable and Programmable ROM (EEPROM).

The display 130 may be implemented by a liquid crystal display (LCD) oran organic light emitting display, which displays various data such asan image of an object or an operation icon.

The terminal control program may be written onto a recording medium thatis readable by a general-purpose computer such as the recording medium106 in any format that is installable or executable by a general-purposecomputer. Once the terminal control program is written onto therecording medium, the recording medium may be distributed. Further, theterminal control program may be stored in any desired memory other thanthe flash memory 104, such as the ROM 102. Alternatively, the terminalcontrol program may be downloaded from the program providing system 70through the network I/F 110, and stored in a memory such as the flashmemory 104 or the recording medium 106.

Referring now to FIG. 3, a hardware structure of the informationproviding apparatus 30 is explained according to an example embodimentof the present invention. As illustrated in FIG. 3, the informationproviding apparatus 30 includes a CPU 301, a ROM 302, a RAM 303, a harddisk (HD) 304, a hard disk drive (HDD) 305, a display 306, a network I/F307, an operation button (keys) 308, an operation panel 309, a mediumdrive 311, a first communication I/F 312, a second communication I/F313, and an external device connection I/F 315, which are electricallyconnected through a bus 314 such as an address bus or a data bus.

The CPU 301 controls entire operation of the information providingapparatus 30. The ROM 302 stores a control program for execution by theCPU 301, such as an IPL. The RAM 303 functions as a work area of the CPU301. The HD 304 stores therein various data such as the informationproviding control program. The HDD 305 controls reading or writing ofvarious data with respect to the HD 304 under control of the CPU 301.The display 306, which may be implemented by a LCD or an organic EL,displays various data such as a cursor, menu, window, character, orimage. The network I/F 307 allows the information providing apparatus 30to transmit data through the communication network 2. The operationbutton 308 allows the user to input a user instruction including, forexample, selection or execution of a specific instruction, selection ofan area to be processed, and instruction of cursor movement. Theoperation panel 309 allows the user to input a user instructionincluding, for example, selection or execution of a specificinstruction, selection of an area to be processed, and instruction ofcursor movement, through a touch panel. The medium drive 311 controlsreading or writing of various data with respect to a recording medium310, which can be freely attached to or detached from the informationproviding apparatus 30. The external device connection I/F 315 allowsthe information providing apparatus 30 to connect with an outsidedevice.

The first communication I/F 312 and the second communication I/F 313each allow the information providing apparatus 30 to transmit or receivevarious data to or from the outside apparatus such as the terminal 10.The first communication I/F 312 is in compliance with the non-contact ICwireless communication standards such as NFC. The second communicationI/F 313 is incompliance with the Bluetooth communication standards.

The external device connection I/F 315 allows the information providingapparatus 30 to connect with various types of outside device throughsuch as a USB cable. In this example, it is assumed that the informationproviding apparatus 30 communicates with the terminal 10 through thefirst communication I/F 312 or the second communication I/F 313.Alternatively, the information providing apparatus 30 may communicatewith the terminal 10 via the external device connection I/F 315 throughthe USB cable.

The information providing control program may be written onto arecording medium that is readable by a general-purpose computer such asthe recording medium 310 in any format that is installable or executableby a general-purpose computer. Once the information providing controlprogram is written onto the recording medium, the recording medium maybe distributed. Further, the information providing control program maybe stored in any desired memory other than the HD 304, such as the ROM302. Alternatively, the information providing control program may bedownloaded from the program providing system 70 through the network OF307, and stored in a memory such as the HD 304 or the recording medium310.

The relay device 40, the management system 50, and the program providingsystem 70 are each implemented by a general-purpose computer functioningas a server, which includes a processor, a memory, and a networkinterface.

More specifically, the relay device 40 is installed with the relaydevice control program that is used for controlling the relay device 40.The relay device control program may be written onto any desired memoryor recording medium that is readable by a general-purpose computer inany format that is installable or executable by the general-purposecomputer. Once the relay device control program is written onto therecording medium, the recording medium may be distributed.

The management system 50 is installed with the management program thatis used for controlling the management system 50. The management programmay be written onto any desired memory or recording medium that isreadable by a general-purpose computer in any format that is installableor executable by the general-purpose computer. Once the managementprogram is written onto the recording medium, the recording medium maybe distributed.

The program providing system 70 is installed with the program providingprogram that is used for controlling the program providing system 90.The program providing program may be written onto any desired memory orrecording medium that is readable by a general-purpose computer in anyformat that is installable or executable by the general-purposecomputer. Once the program providing program is written onto therecording medium, the recording medium may be distributed.

Referring now to FIG. 4, a hardware structure of the MFP 80 is explainedaccording to an example embodiment of the present invention. Asillustrated in FIG. 4, the MEP 80 includes a controller 510, a printer81, and a scanner 82, which are connected through a Peripheral ComponentInterconnect (PCI) bus. The controller 510 controls entire operation ofthe MFP 80 including drawing, communicating, or receiving an instructionthrough an operation panel 520. The printer 81 and the scanner 82 areeach provided with an image processing circuit such as an imageprocessing circuit that performs error diffusion for binarization, andan image processing circuit that performs gamma conversion for tonecorrection. The operation panel 520 includes a display 520 aand an inputdevice 520 b. The display 520 a, which may be implemented by a LCD,displays various data such as scanned image data obtained by the scanner82, and receives a user instruction through a touch panel screen. Theinput device 520 b, which may be implemented by a plurality of keys,receives a user instruction.

According to a user instruction that selects specific application, whichis input through the input device 520 b, the MFP 80 selects one of theplurality of functions including the data storage function (document boxfunction), the copy function, the printer function, the scannerfunction, and the facsimile transmission/reception function. Morespecifically, when the user selects the data storage function, the MFP80 changes its mode to a data storage mode. When the user selects thecopy function, the MFP 80 changes its mode to a copy mode. When the userselects the printer function, the MFP 80 changes its mode to a printermode. When the user selects the scanner function, the MFP 80 changes itsmode to a scanner mode. When the user selects the facsimile function,the MFP 80 changes its mode to a facsimile mode.

The controller 510 includes a CPU 511, a system memory (MEM-P) 512, anorth bridge (NB) 513, a south bridge (SB) 514, an Application SpecificIntegrated Circuit (ASIC) 516, a local memory (MEM-C) 517, and a harddisk drive (HDD) 518. The NB 513 and the ASIC 516 are connected throughan Accelerated Graphics Port (AGP) bus 515. The MEM-P 512 includes aread only memory (ROM) 512a and a random access memory (RAM) 512 b.

The CPU 511 controls entire operation of the MFP 80, and is connectedwith the other devices through a chip set including the NB 513, theMEM-P 512, and the SB 514.

The NB 513 is a bridge that connects the CPU 511 with the MEM-P 512, SB514, and AGP bus 515. The NB 513 includes a memory controller thatcontrols reading or writing of data with respect to the MEM-P 512, a PCImaster, and an AGP target.

The MEM-P 512 is a system memory that functions as a data storage memoryfor storing programs or data, a data deployment memory for deployingprograms or data, or a drawing memory for print processing. The ROM 512a is a read only memory for storing control programs that controloperation of the CPU 511 or data. The RAM 512 b is a readable andwritable memory, which functions as a data deployment memory fordeploying programs or data, or a drawing memory for print processing.

The SB 514 is a bridge that connects the NB 513 with a PCI device orperipheral device. The SB 514 is connected with the NB 513 through thePCI bus, to which a network OF 580 is connected.

The ASIC 516 is an integrated circuit (IC) specially designed for imageprocessing such that the ASIC 516 includes an image processing circuit.The ASIC 516 functions as a bridge that connects the AGP bus 515, PCIbus, HDD 518, and MEM-C 517. The ASIC 516 includes a PCI target, an AGPmaster, an arbiter (ARB), a memory controller that controls the MEM-C517, a plurality of direct memory access controllers (DMACs) thatperforms image rotation using such as a hardware logic, and a PCI unitthat transfers data with the printer 81 and the scanner 82 though thePCI bus. As illustrated in FIG. 4, the ASIC 516 is connected with afacsimile control unit (FCU) 530, a universal serial bus (USB) 540, theInstitute of Electrical and Electronics Engineers (IEEE) 1394 interface550, a first communication I/F 583, and a second communication I/F 585,through the PCI bus. The first communication I/F 583 is a communicationinterface that is in compliance with the NFC communication standards.The second communication I/F 585 is a communication interface that is incompliance with the Bluetooth communication standards.

The MEM-C 517 is a local memory that may be used as a copy image bufferor an encoding buffer. The HDD 518 functions as a storage, which storestherein various data, various control programs for execution by the CPU511, font data, and form data.

The AGP bus 515 is a bus interface designed for graphics acceleratorcard, for example, to improve the processing speeds. By directlyaccessing the MEM-P 512 by high throughput, processing with the graphicaccelerator card can be performed with increased speeds.

Next, referring to FIG. 5, functional structures of the terminal 10,information providing apparatus 30, and MFP 80 are explained accordingto an example embodiment of the present invention.

As illustrated in FIG. 5, the terminal 10 includes a datatransmit/receive 11, an operation input 12, a login request 13, animaging unit 14, a sound input 15, a sound output 16, a display control17, a selection unit 18, a memory control 19, an external informationdeterminer 20, a NFC transmit/receive 21, and a Bluetoothtransmit/receive 22. These units shown in FIG. 5 correspond to aplurality of functions or functional modules, which are executedaccording to an instruction of the CPU 101 (FIG. 2) that is generatedaccording to the terminal control program being loaded from the flashmemory 104 onto the RAM 103. The terminal 10 further includes a memory23, which may be implemented by the SSD 105 of FIG. 2.

The data transmit/receive 11, which may be implemented by the networkI/F 110 (FIG. 2) under control of the CPU 101, transmits or receivesvarious data or information to or from another terminal, device, orsystem, through the communication network 2. When communication isestablished with counterpart terminal 10 through the relay device 40,the data transmit/receive 11 registers the terminal ID of thecounterpart terminal 10 in a management table 231 stored in the memory23, and manages the terminal ID of the counterpart terminal 10. Theterminal ID of the terminal 10 may be any identification informationthat uniquely identifies each terminal such as a host name or an IPaddress uniquely assigned to the terminal 10.

The operation input 12 receives a user instruction input by the userthrough the operation button 108 or the power switch 109 (FIG. 2), undercontrol of the instructions received from the CPU 101. For example, whenthe user selects a counterpart terminal 10 using a selection screenbeing displayed on the display 130 and confirms this selection, theoperation input 12 receives the terminal ID or the IP address of theselected terminal 10 as the counterpart terminal 10. In another example,the user may input an instruction for changing the layout of a screensuch as the change in arrangement of an image being displayed on thescreen or the change in size of the image being displayed on the screen,using the operation button 180. When the operation button 180 isselected, the operation input 12 receives the user instruction forchanging the layout of the screen.

The operations or functions of the login request 13 are performedaccording to an instruction received from the CPU 101 (FIG. 2). Forexample, when the power of the terminal 10 is turned on, the loginrequest 13 automatically causes the data transmit/receive 11 to sendlogin request information that requests the login process, and a currentIP address of the terminal 10, to the management system 50 through thecommunication network 2. The login request information includes at leastthe terminal ID of the terminal 10. The management system 50 manages thelogin request information including the terminal ID and the IP address,which are received from the terminal 10.

The operations or functions of the imaging unit 14 of the terminal 10are performed by the camera 113 and the camera I/F 114 according to aninstruction received from the CPU 101 (FIG. 2). The imaging unit 14takes an image of an object to output image data of the object. Forexample, the object may be one or more users in a conference room.

The operations or functions of the sound input 15 of the terminal 10 areperformed by the sound I/O I/F 117 according to an instruction receivedfrom the CPU 101, in cooperation with the microphone 115. After themicrophone 115 converts sounds such as voice of the user at the terminal10 to a voice signal, the sound input 15 inputs the sound signal in theform of sound data for further processing. The operations or functionsof the sound output 16 of the terminal 10 are performed by the sound I/OI/F 117 according to an instruction received from the CPU 101, incooperation with the speaker 116. The sound output 16 outputs a soundsignal of sound data that is received from the counterpart terminal 10through the speaker 115.

The operations or functions of the display control 17 of the terminal 10of FIG. 5 are performed by the display I/F 118 (FIG. 2) according to aninstruction received from the CPU 101. The display control 17 controlstransmit of image data such as display data to the display 130.

The operations or functions of the selection unit 18 may be performedaccording to an instruction received from the CPU 101 (FIG. 2) incooperation with the network I/F 110. The selection unit 18 selects oneof the relay devices 40 that is suitable for communication to startvideoconference. More specifically, the selection unit 18 obtains dateand time information indicating the date and time at which the datatransmit/receive 11 of the terminal 10 receives preparatory transmitinformation when the preparatory transmit information is transmittedfrom the counterpart terminal 10 through each one of the candidate relaydevices 40. The selection unit 18 calculates a time period between thetime when the preparatory transmit information is transmitted by thecounterpart terminal 10 and the time when the preparatory transmitinformation is received at the terminal 10, based on the differencebetween the time and date information included in the preparatorytransmit information and the time and date obtained by the selectionunit 18. The selection unit 18 selects one of the candidate relaydevices 40 having the minimum value of the calculated time period.Alternatively, for each one of the candidate relay devices 40, theselection unit 18 may calculate a time period between the time when theterminal 10 transmits preparatory transmit information to the relaydevice 40 and the time when the terminal 10 receives a response (ACK) tothe preparatory transmit information from the relay device 40. Theselection unit 18 selects one of the candidate relay devices 40 havingthe minimum value of the calculated time period. The time period may becalculated in milliseconds.

The memory control 19 is implemented by the SSD 105 of FIG. 2 accordingto an instruction received from the CPU 101. The memory control 19stores various data in the memory 23, or reads out various data from thememory 23.

The memory 23 stores the management table 231 (FIG. 6) that managesterminal IDs of counterpart terminals 10, and an authentication table232 (FIG. 7) that stores authentication information (a user ID and apassword) to be used for authenticating the information providingapparatus 30. The memory 23 further stores therein display dataobtaining program 233 and a driver used for data transmission orreception. When the memory 23 is mounted, the CPU 301 (FIG. 3) executesoperation according to the display data obtaining program 233 tointeract with the outside apparatus to obtain display data. Morespecifically, the display data obtaining program 233 of the terminal 10causes the information providing apparatus 30 to additionally have adisplay data obtainer 35, which obtains and transmits display data tothe terminal 10.

FIG. 6 illustrates an example data structure of the management table 231stored in the memory 23. The management table 231 stores, for each oneof counterpart terminals 10, a data number and a terminal ID inassociation with each other. In this example, the terminal ID of thecounterpart terminal 10, such as the terminal IDs of the terminals 10aa, 10 ba, and 10 ca are stored in association with the data numbers 1,2, and 3. The data number may be used to manage the terminal ID of eachterminal 10. The data number may be further used to specify an area of ascreen that displays image data transmitted from the counterpartterminal 10 having the terminal ID.

FIG. 7 illustrates an example data structure of the authentication table232 stored in the memory 23. The authentication table 232 stores a userID and a password for each one of the users who are authorized to usethe information providing apparatus 30. Since the information providingapparatus 30 is a portable device, it is assumed that each informationproviding apparatus 30 is assigned with a pair of user ID and passwordof the user who is authorized to use the information providing apparatus30.

Referring back to FIG. 5, the external information determiner 20, whichmay be implemented by the CPU 101 (FIG. 2), determines whethertransmission or reception of data with respect to the outside apparatussuch as the information providing apparatus 30 is detected. In thisexample, it is assumed that the terminal 10 communicates with theinformation providing apparatus 30.

The NFC transmit/receive 21, which may be implemented by the firstcommunication I/F 111 (FIG. 2) under control of the CPU 101,communicates data with a NFC data transmit/receive 31 of the informationproviding apparatus 30 in compliance with the NFC communicationstandards.

The NFC data transmit/receive 21 is capable of transmitting or receivingdata to or from the information providing apparatus 30 within a distancethat is shorter than a distance that can be communicated by theBluetooth data transmit/receive 22, for example, within a distance ofabout 10 cm or less. Further, the data transfer rate of the NFC datatransmit/receive 21 in compliance with the NFC communication standardsis 424 kbps at maximum, compared to the maximum data transfer rate of 24Mbps that can be achieved by the Bluetooth data transmit/receive 22based on the Bluetooth communication standards. Since the data transferrate of the NFC transmit/receive 21 is less than that of the Bluetoothtransmit/receive 22, the NFC transmit/receive 21 is mainly used tocommunicate data with a smaller data size.

In alternative to using the NFC communication standards, any othercommunication standards that allow the terminal 10 to communicate withthe outside apparatus within a communication range that is narrower thanthat of the Bluetooth communication may be used.

When the NFC transmit/receive 21 detects that the information providingapparatus 30 is at a location within the communication range of the NFCtransmit/receive 21, the NFC transmit/receive 21 communicates with a NFCtransmit/receive 31 of the information providing apparatus 30 based onthe NFC communication standards. The NFC transmit/receive 21 furtherreceives authentication information of the information providingapparatus 30 from the NFC transmit/receive 31. When authentication ofthe information providing apparatus 30 is successful, the NFCtransmit/receive 21 transmits connection settings information to the NFCdata transmit/receive 31. The connection settings information, which isrequired for establishing the Bluetooth communication, includes aBluetooth Device (BD) address or a path phrase that is assigned to thesecond communication I/F 112. The connection settings information may bestored in the NFC transmit/receive 21. Alternatively, the NFCtransmit/receive 21 may read out the connection settings informationfrom the second communication I/F 112.

The Bluetooth transmit/receive 22, which may be implemented by thesecond communication I/F 112 (FIG. 2) under control of the CPU 101,communicates with a Bluetooth data transmit/receive 32 of theinformation providing apparatus 30 in compliance with the Bluetoothcommunication standards. As described above, the Bluetoothtransmit/receive 22 is capable of transmitting or receiving data to orfrom the outside apparatus within a distance of about 10 to 100 m, whichis wider than that of the NFC data transmit/receive 21. Further, thedata transfer rate of the Bluetooth data transmit/receive 22 is about 24Mbps at maximum, which is faster than that of the NFC datatransmit/receive 21.

The Bluetooth transmit/receive 22 establishes the Bluetoothcommunication with the information providing apparatus 30, using theconnection settings information that is sent by the NFC transmit/receive21 to the information providing apparatus 30.

In alternative to using the Bluetooth communication standards, any othercommunication standards that allow the terminal 10 to communicate withthe outside apparatus within a communication range that is wider thanthat of the NFC communication may be used. For example, a communicationI/F in compliance with the Wireless Fidelity (WiFi) standards such asthe IEEE802.11a/IEEE802.11b may be used. In such case, in replace of theBluetooth transmit/receive 22, a WiFi transmit/receive is provided inthe terminal 10, which includes a network board that transmits orreceives data based on the IEEE802.11a/b/g/n standards, and acommunication controller that controls establishment of theIEEE802.11a/b/g/n wireless communication or data transmission orreception.

In another example, a communication I/F in compliance with the wirelessUSB standards may be used. If a distance between the apparatuses isequal to or less than 3 m based on the Ultra Wide Band (UWB)communication protocol, the wireless USB communication may be used,which is capable of transferring data in 480 Mbps, which issubstantially the same transfer rate of the wired USB 2.0 communication.In such case, in replace of the Bluetooth transmit/receive 22, awireless USB transmit/receive is provided in the terminal 10, whichincludes a UWB device that transmits or receives data in compliance withthe wireless USB standards, and a communication controller that controlsestablishment of USB wireless communication or data transmission orreception.

Still referring to FIG. 5, the information providing apparatus 30includes the NFC transmit/receive 31, the Bluetooth transmit/receive 32,an operation input 33, a display control 34, the display data obtainer35, a display data communicator 36, a memory control 37, and a filecontroller 39. These units shown in FIG. 5 correspond to a plurality offunctions or functional modules, which are executed according to aninstruction of the CPU 301 (FIG. 3) that is generated according to theinformation providing control program being loaded from a memory such asthe ROM 302 onto the RAM 303. The information providing apparatus 30further includes a memory 38, which may be implemented by the HDD 305 ofFIG. 3.

The NFC transmit/receive 31, which may be implemented by the firstcommunication I/F 312 (FIG. 3) under control of the CPU 301,communicates with the NFC transmit/receive 21 of the terminal 10 or aNFC transmit/receive 85 of the MFP 80 using the non-contact IC NFCcommunication standards.

When the NFC transmit/receive 31 detects that the information providingapparatus 30 is moved to a location close to a communication range ofthe NFC transmit/receive 21 of the terminal 10, the NFC transmit/receive31 establishes the NFC communication with the NFC transmit/receive 21 ofthe terminal 10 to start transmission or reception of various data withthe terminal 10. More specifically, when the NFC communication isestablished with the NFC transmit/receive 21 of the terminal 10, the NFCtransmit/receive 31 transmits the authentication information of theinformation providing apparatus 30 to the terminal 10, and receivesconnection settings information required for the Bluetooth communicationfrom the terminal 10. In this example, the authentication information tobe transmitted is previously entered by the user at the informationproviding apparatus 30. Based on the authentication information, theterminal 10 determines whether the user at the information providingapparatus 30 is authenticated.

When the NFC transmit/receive 31 detects that the information providingapparatus 30 is moved to a location close to a communication range of aNFC transmit/receive 85 of the MIP 80, the NFC transmit/receive 31establishes the NFC communication with the NFC transmit/receive 85 ofthe MFP 80 to start transmission or reception of various data with theMFP 80. More specifically, when the NFC communication is establishedwith the NFC transmit/receive 85 of the MFP 80, the NFC transmit/receive31 transmits authentication information such as an authentication ID, afunction ID, function settings information, and communication settingsinformation that is required for establishing the Bluetoothcommunication, to the NFC transmit/receive 85 MFP 80.

The Bluetooth transmit/receive 32, which may be implemented by thesecond communication OF 313 (FIG. 3) under control of the CPU 301,communicates with the Bluetooth transmit/receive 22 of the terminal 10or a Bluetooth transmit/receive 86 of the MFP 80 using the Bluetoothcommunication standards. When the communication with the Bluetoothtransmit/receive 22 of the terminal 10 is established, the Bluetoothtransmit/receive 32 of the information providing apparatus 30 transmitsdisplay data obtained by the display data obtainer 35 to the terminal10. The Bluetooth transmit/receive 32 further receives informationregarding sharing of the display data from the Blue transmit/receive 22of the terminal 10. When the Bluetooth communication is established withthe Bluetooth transmit/receive 86 of the MFP 80, the transmit/receive 32receives image data, such as the scanned image data, from the MFP 80.

FIG. 8 is an illustration for explaining a communication range of twotypes of wireless communication, which may be established between theterminal 10 and the information providing apparatus 30. FIG. 9 is anillustration for explaining a communication range of two types ofwireless communication, which may be established between the informationproviding apparatus 30 and the MFP 80.

Referring to FIGS. 8 and 9, a communication range A11 indicated by thetwo-dashed line is a communication range of the NFC communication, whichmay be established between the NFC transmit/receive 21 and the NFCtransmit/receive 31, or between the NFC transmit/receive 31 and the NFCtransmit/receive 85. A communication range A12 indicated by the dashedline is a communication range of the Bluetooth communication, which maybe established between the Bluetooth transmit/receive 22 and theBluetooth transmit/receive 32, or between the Bluetooth transmit/receive32 and the Bluetooth transmit/receive 86. As illustrated in FIGS. 8 and9, the communication range A12 of the Bluetooth communication is widerthan the communication range A11 of the NFC communication.

When each of the NFC transmit/receive 21 and the NFC transmit/receive31, or each of the NFC transmit/receive 31 and the NFC transmit/receive85 determines that it is in the communication range A11, the NFCcommunication is automatically established to start transmission orreception of various data such as authentication information orconnection settings information. When the terminal 10 authenticates theinformation providing apparatus 30 based on authentication informationreceived from the information processing apparatus 30, the Bluetoothcommunicating is established between the Bluetooth transmit/receive 22and the Bluetooth transmit/receive 32. When the MFP 80 authenticates theinformation providing apparatus 30 based on authentication informationreceived from the information processing apparatus 30, the Bluetoothcommunication is established between the Bluetooth transmit/receive 32and the Bluetooth transmit/receive 86.

As described above, the information providing apparatus 30 communicateswith the terminal 10 and the MFP 80, respectively, through the NFCcommunication to obtain connection settings information to be used forthe Bluetooth communication. More specifically, the informationproviding apparatus 30 can easily obtain the connection settingsinformation that is required to establish the Bluetooth communication,as the user brings the information providing apparatus 30 into closeproximity to the terminal 10 or the MFP 80. Accordingly, the user or theinformation providing apparatus 30 does not have to perform any otheroperation to specify the terminal 10 or the MFP 80 to startcommunicating with the terminal 10 or the MFP 80 using the Bluetoothcommunication standards.

Referring back to FIG. 5, the operation input 33 receives a userinstruction input by the user through the operation button 308 or theoperation panel 309, under control of the instructions received from theCPU 301 (FIG. 3).

The operations or functions of the display control 34 are performed bythe display 306 (FIG. 3) according to an instruction received from theCPU 301. The display control 34 causes the display 306 to displayvarious data such as a curser, menu, window, character, or image.

The display data obtainer 35, which may be implemented by the CPU 301(FIG. 3) in cooperation with the display data obtaining program 233 thatis stored in the memory 23 of the terminal 10, obtains display data tobe shared among the terminals 10 under control of the display control34.

The display data communicator 36, which may be implemented by the secondcommunication I/F 313 according to an instruction received from the CPU301 (FIG. 3), transmits the display data obtained by the display dataobtainer 35 to the terminal 10 through the Bluetooth transmit/receive32. The display data communicator 36 receives various data, which may betransmitted from the terminal 10 so as to notify the informationproviding apparatus 30 of the changes in operation state of the terminal10.

The memory control 37 is implemented by the HDD 305 of FIG. 3 accordingto an instruction from the CPU 301. The memory control 37 stores variousdata in the memory 38 or reads out various data from the memory 38. Thememory 38 stores conference data such as presentation data to betransmitted to the terminal 10 for distribution to the terminals 10, andvarious application programs for displaying the presentation data suchas word processor application, spreadsheet application, or presentationapplication. Further, in this example, the memory 38 stores a filecontrol program, which causes the CPU 301 to function as the filecontroller 39.

The presentation data may be obtained by the MFP 80, for example, byscanning. For example, when the information providing apparatus 30receives the scanned image data from the MFP 80, the memory control 37stores the scanned image data in a predetermined memory area of thememory 38 for later use.

The file controller 39 generates or manages a file management table,which stores a file name and information indicating the memory area inwhich data is stored, for each one of one or more files of the imagedata received from the MFP 80. In alternative to using the file name,any other identification information that uniquely identifies a specificdata file may be used. For example, when the file control program storedin the memory 38 is loaded onto the RAM 303, the CPU 301 functions asthe file controller 39 to manage electronic data stored in theinformation providing apparatus 30 using the file management table.

FIG. 10 is an example data structure of the file management table storedin the memory 38. Referring to FIG. 10, information indicating thememory area in which specific data is stored and the file name areexpressed as a path, which is used as association information thatassociates the information indicating the memory area and the file name.In the example case of “

conference

doc

strategy.pdf”, the information indicating the memory area is “

conference

doc

” and the file name is “strategy.pdf”.

Referring back to FIG. 5, the display control 34 may cause the display306 to display a list of one or more file names for one or more datafiles that are registered in the file management table, for selection bythe user. When the operation input 33 receives a user instruction forselecting specific data, the memory control 37 reads out the selecteddata by specifying the memory area that is associated with the selectedfile name. The display data communicator 36 transmits the selected datato the terminal 10 through the Bluetooth transmit/receive 32 as displaydata to be shared.

The MFP 80 includes a scanner 81, a printer 82, a facsimiletransmit/receive 83, a data processor 84, the NFC transmit/receive 85,the Bluetooth transmit/receive 86, a usage determiner 87, anauthenticator 88, and an authentication data memory 89.

The NFC transmit/receive 85 communicates with the outside apparatus suchas the information providing apparatus 30 in compliance with thenon-contact IC NFC communication standards. The NFC transmit/receive 85is provided with a reader or writer, or a tag, which incorporates acommunication control program that reads information transmitted fromthe NFC transmit/receive 31 of the information providing apparatus 30.The NFC transmit/receive 85 transmits or receives data to or from theoutside apparatus within a communication range of about 0 to 10 cm,which is narrower than a communication range of the Bluetoothcommunication performed by the Bluetooth transmit/receive 86. The datatransfer rate of the NFC transmit/receive 85 is about 100 to 400 kbps,which is less than the data transfer rate of the Bluetoothtransmit/receive 86 of about 1 to 2 Mbps. For this reasons, as describedabove, the NFC transmit/receive 85 is used for transmitting data with arelatively small data size. In alternative to using the NFCcommunication standards, the NFC transmit/receive 85 may use any othercommunication standards having a communication range that is narrowerthan that of the Bluetooth communication standards such as the InfraredData Association (IrDA) communication standards.

When the NFC transmit/receive 85 detects that the information providingapparatus 30 is moved into a close proximity to the MFP 80 such that itis in the communication range of the NFC transmit/receive 85, the NFCtransmit/receive 85 establishes communication with the NFCtransmit/receive 31 using the NFC communication standards. The NFCtransmit/receive 85 receives various information such as anauthentication ID, a function ID, communication settings information,and function settings information, from the information providingapparatus 30. The authentication ID is authentication information, whichis used to determine whether the information providing apparatus 30 isauthorized to use the MFP 80. For example, the authentication ID may beuser identification information that uniquely identifies the user of theinformation providing apparatus 30 or specific information that uniquelyidentifies the information providing apparatus 30. In one example, theuser identification information may be an employee ID of the user basedon assumption that the MFP 80 is used in the office environments. Thefunction ID is information indicating a specific function of the MFP 80,which is previously assigned for each function of the MFP 80. Using thefunction ID, the user at the information providing apparatus 30 is ableto request specific processing to be performed by the MFP 80. In casethe user at the information providing apparatus 30 requests for theprinter function of the MFP 80, the function ID indicating the printfunction, such as the “print ID” is used as the function ID. In case theuser at the information providing apparatus 30 requests for the scannerfunction of the MFP 80, the function ID indicating the scanner function,such as the “scanner ID” is used as the function ID.

The communication settings information indicates parameter values thatare initially set and required by the outside apparatus to startwireless communication through the Bluetooth transmit/receive 86 withthe AFP 80. As described above, as the information providing apparatus30 is moved into close proximity to the MFP 80, the MFP 80 startscommunicating with the information providing apparatus 30 using the NFCcommunication standards to receive authentication information from theinformation providing apparatus 30. When the information providingapparatus 30 is authenticated, the MFP 80 transmits the communicationsettings information to the information providing apparatus 30 using theNFC communication to allow the information providing apparatus 30 tostart communicating with the MFP 80 through the Bluetooth communication.Accordingly, the user at the information providing apparatus 30 does nothave to perform any operation other than moving the informationproviding apparatus 30 to the MFP 80 to start the Bluetoothcommunication.

The function settings information indicates various parameters regardingthe specific function to be performed by the MFP 80. In case thefunction ID indicates the printer function, the function settingsinformation includes, for example, a parameter value “on” or “off” forthe double-side printing and a parameter value “on” or “off” for theaggregate printing. In case the function ID indicates the scannerfunction, the function settings information includes, for example, aparameter value “300 dpi” for the image resolution of the scanned imagedata.

The authenticator 88 determines whether the authentication ID, which isreceived from the information providing apparatus 30, indicates that theinformation providing apparatus 30 is an authenticated apparatus that isallowed to use the MFP 80. More specifically, the authenticator 88determines whether the authentication ID received by the NFCtransmit/receive 85 matches an authentication ID stored in the memory89.

The usage determiner 87 determines whether the authentication IDreceived from the information providing apparatus 30 indicates that theinformation providing apparatus 30 is an authenticated apparatus that isallowed to use a requested function of the MFP 80, which is specified bythe function ID received from the information providing apparatus 30.More specifically, the usage determiner 87 obtains use permissioninformation, which is associated with the authentication ID and thefunction ID that are received by the NFC transmit/receive 85, from theauthentication data memory 89, and determines whether the use permissioninformation indicates that usage is allowed for each function ID.

The Bluetooth transmit/receive 86 communicates with the outsideapparatus such as the information providing apparatus 30 using theBluetooth communication standards. The Bluetooth transmit/receive 86transmits or receives data with the information providing apparatus withthe data transfer rate of 1 to 10 Mbps, which is greater than the datatransfer rate of the NFC transmit/receive 85. Further, the Bluetoothtransmit/receive 86 is able to communicate with the informationproviding apparatus 30 with a communication range of about 10 m or less,which is wider than a communication range of the NFC communication.

More specifically, the Bluetooth transmit/receive 86 includes aBluetooth I/F such as a transceiver, and a communication controller. TheBluetooth I/F transmits or receives data with the outside apparatus suchas the information providing apparatus 30 according to the Bluetoothcommunication standards that transmits or receives data according to theBluetooth communication standards. The communication controllerexchanges communication settings information with the outside apparatusthrough the Bluetooth I/F to establish the Bluetooth communication. Thecommunication settings information includes specific address informationassigned to the Bluetooth I/F.

In alternative to using the Bluetooth communication standards, any othercommunication standards that allow the MFP 80 to communicate with theoutside apparatus within a communication range that is wider than thatof the NFC communication may be used. For example, a communication I/Fin compliance with the wireless LAN standards such as theIEEE802.11a/IEEE802.11b/IEEE802.11n/IEEE802.11g may be used. In suchcase, in replace of the Bluetooth transmit/receive 86, a wireless LANtransmit/receive is provided in the MFP 80, which includes a networkboard that transmits or receives data based on theIEEE802.11a/IEEE802.11b standards, and a communication controller thatcontrols establishment of the IEEE802.11a/IEEE802.11b communication ordata transmission or reception.

In another example, a communication I/F in compliance with the wirelessUSB standards may be used. If a distance between the apparatuses isequal to or less than 3 m based on the UWB communication protocol, thewireless USB communication may be used, which is capable of transferringdata in 480 Mbps, which is substantially the same transfer rate of thewired USB 2.0 communication. In such case, in replace of the Bluetoothtransmit/receive 86, a wireless USB transmit/receive is provided in theMFP 80, which includes a UWB device that transmits or receives data incompliance with the wireless USB standards, and a communicationcontroller that controls establishment of USB wireless communication ordata transmission or reception.

In case the Bluetooth transmit/receive 86 establishes the Bluetoothcommunication with the information providing apparatus 30, based on thecommunication settings information received from the informationproviding apparatus 30 through the NFC transmit/receive 85, theBluetooth transmit/receive 86 transmits or receives data regarding thefunction ID received from the information providing apparatus 30.Examples of data to be transmitted or received include various data suchas image data, document data, or text data.

The scanner 81 scans a paper document into electronic data using animaging element such as a charged coupled device (CCD) The scanner 81may be additionally provided with an automatic document feeder (ADF),which automatically feeds the paper document, one page by one page, toan image reading section of the scanner 81.

The data processor 84 performs processing relating to the function IDand the function settings information that are received from the NFCtransmit/receive 85, on electronic data that is received through theBluetooth transmit/receive 86 or to be transmitted through the Bluetoothtransmit/receive 86. For example, in case that the function IDindicating the printer function is received, the data processor 84applies image processing relating to image density color tone or layoutprocessing for double-sided printing or single-sided printing, to theimage data according to the function settings information. In case thatthe function ID indicating the scanner function is received, the dataprocessor 84 applies image processing or layout processing according tothe function settings information, to the scanned image data receivedfrom the scanner 81.

The printer 82 prints an image based on the electronic data processed bythe data processor 84 on a recording sheet.

The facsimile transmit/receive 83 transmits facsimile data, based on thescanned image data obtained by the scanner 81 or image data receivedfrom the information providing apparatus 30, to the outside apparatussuch as another MFP, a facsimile apparatus, or a client terminal,through the network. The facsimile transmit/receive 83 receivesfacsimile data from the outside apparatus such as another MFP, afacsimile apparatus, or a client terminal, through the network.

The authentication data memory 89 stores use permission information,which is used to determine whether the outside apparatus is allowed touse a specific function of the MFP 80. FIG. 11 illustrates an exampledata structure of the use permission information stored in theauthentication data memory 89. The authentication data memory 89 storesthe use permission information, which indicates association between anauthentication ID and one or more function IDs of the MFP 80. Referringto FIG. 11, the apparatus having the authentication ID “person1” isallowed to use the printer function (“Y” for “printer ID”) and thescanner function (“Y” for “scanner ID”) of the MFP 80. The apparatushaving the authentication ID “person2” is allowed to use the scannerfunction (“Y” for “scanner ID”), but not the printer function (“NO” for“printer ID”).

Now, various image data to be displayed on the display 130 of theterminal 10 is explained. Examples of image data to be displayed on thedisplay 130 during videoconference include captured image data capturedby the camera 113 and display data transmitted from the informationproviding apparatus 30. The captured image data is any image datacaptured by the camera 113 of the terminal 10, or any image datacaptured by the camera 113 of the counterpart terminal 10. The displaydata includes any data transmitted from the information providingapparatus 30, such as the scanned image data that is scanned by the MFP80 and stored in the information providing apparatus 30, or image datareflecting a screen being displayed on the display 306 of theinformation providing apparatus 30.

FIG. 12 illustrates an example screen, which may be displayed on thedisplay 130 of the terminal 10. The screen of FIG. 12 is divided intofour areas including a first display area A21 having a larger size thatcovers the left to the central sections of the screen, and three seconddisplay areas A22 to A24 that cover the upper right to the upper left ofthe screen. The first display area A21 displays captured image datareflecting the user who is currently speaking, which is captured by theterminal 10 that detects sounds through the microphone 115.

For the descriptive purposes, it is assumed that a user at a firstterminal 10 aa is currently speaking, when the first terminal 10 aa, asecond terminal 10 ba, and a third terminal 10 ca are havingvideoconference. In operation, the CPU 101 of the first terminal 10 aa,functioning as the sound input 15, monitors sounds input through thesound I/O I/F 117 to detect a range of voices of the user of the firstterminal 10 aa. When the voices of the user are detected, the CPU 101transmits the terminal ID of the first terminal 10 aa through thenetwork I/F 110 to the counterpart terminals 10 ba and 10 ca through therelay device 40. When the counterpart terminals 10 ba and 10 ca eachreceive the terminal ID of the first terminal 10 aa, the display control17 of each of the counterpart terminals 10 ba and 10 ca refers to themanagement table 231 of FIG. 5 to extract a data number that isassociated with the first terminal 10 aa. The display control 17 assignsthe first display area A21 of the screen, to the image data that isreceived from the first terminal 10 aa specified by the extracted datanumber, thus displaying the image data of the user who is currentlyspeaking in the first display area A21. For each one of the counterpartterminals 10 ba and 10 ca other than the first terminal 10 aa, thedisplay control 17 assigns the second display area of the screen, toimage data that is captured at the other counterpart terminal 10 ba and10 ca specified by a data number of the management table 231. Since theuser who is currently speaking is displayed in the first display areaA21 with a larger image size at a central position, the user at eachsite can easily recognize the user who is currently speaking. For thecounterpart terminals 10 ba and 10 ca other than the first terminal 10aa of the user who is currently speaking, assigning of the seconddisplay area may be performed in any desired order, such as an ascendingor descending order based on the data number or the terminal ID.

In another example, as illustrated in FIG. 13, the display control 17 ofthe terminal 10 may display display data, which is received from theinformation providing apparatus 30, on a selected area A25 of the firstdisplay area A21 together with other presentation data. In such case,the image data of the first to third terminals 10 aa, 10 ba, and 10 caare respectively displayed on the second display areas A22, A23, andS24. As presentation data including the display data is displayed in thefirst display area A21 with a larger image size at a central position,the user can easily see the presentation data.

In another example, the display control 17 may switch a screen beingdisplayed on the display 130, depending on the situation. For example,as illustrated in FIG. 14, when the terminal 10 is receiving the displaydata from the information providing apparatus 30, the display control 17may assign the display data to an entire display area A2 of the screen.When the operation input 12 of the terminal 10 detects a userinstruction for switching, such as a specific curser key of theoperation button 108, the display control 17 switches the screen of FIG.14 to the screen of FIG. 12. When the operation input 12 of the terminalfurther detects a user instruction for switching, such as the specificcurser key of the operation button 108, the display control 17 furtherswitches the screen of FIG. 12 to the screen of FIG. 13. In this manner,the terminal 10 is able to display a screen on the display 130 accordingto the user preference. For example, when the presentation data is beingdisplayed, the user at each site may change the appearance of the screenso as to check the user at the counterpart terminal 10.

Now, operation of requesting the MFP 80 to perform specific processing,performed by the information providing apparatus 30, is explainedaccording to an example embodiment of the present invention. Morespecifically, in one example, the user at the information providingapparatus 30 requests the MFP 80 to obtain scanned image data of adocument, and transmits the scanned image data to the informationproviding apparatus 30. In another example, the user at the informationproviding apparatus 30 requests the MFP 80 to print image data, whichmay be transmitted from the information providing apparatus 30, as aprinted image.

The user, who may be participating in the videoconference, requests theinformation processing apparatus 30 to establish communication with theMFP 80 and request the MFP 80 to perform image forming operation. Morespecifically, the display control 34 of the information providingapparatus 30 displays a login screen of FIG. 15 on the display 306. Theuser enters an authentication ID and a function ID using the loginscreen. In this example illustrated in FIG. 15, the scanner IDindicating the scanner function is input as the function ID.

The operation input 33 receives a user instruction, which includes theauthentication ID and the function ID input through the login screen.The user brings the information providing apparatus 30 into closeproximity to the MFP 80 or touch the MFP 80 with the informationproviding apparatus 30 to cause the information providing apparatus 30to establish NFC communication with the MFP 80. When the operation input33 receives the user instruction, the display control 34 displays anavigation screen of FIG. 16 on the display 306 to request the user totouch the MFP 80 with the information providing apparatus 30. Thenavigation screen of FIG. 16 further requests the user to input a filename to be assigned to image data that is to be generated by the MFP 80based on the document to be scanned.

Referring now to FIGS. 17 and 18, operation of establishing wirelesscommunication and processing data, performed by the informationproviding apparatus 30 and the MFP 80, is explained according to anexample embodiment of the present invention.

At S301, the NFC transmit/receive 31 of the information providingapparatus 30 determines whether the NFC communication is establishedwith the NFC transmit/receive 85 of the MFP 80. When it is determinedthat the NFC communication is not established (“NO” at S301), theoperation repeats S301. At this time, the information providingapparatus 30 may display an error message indicating that the NFCcommunication is not established. The error message may further requestthe user to move the information providing apparatus 30 in closeproximity to the MFP 80, as the error may be caused because theinformation providing apparatus 30 is not within a communication rangeof the MFP 80. This process is repeated until the NFC communication isestablished between the information providing apparatus 30 and the MFP80.

At S302, the NFC transmit/receive 85 of the MFP 80 determines whetherthe NFC communication is established with the NFC transmit/receive 31 ofthe information providing apparatus 30. When it is determined that theNFC communication is not established (“NO” at S302), the operationrepeats S302. In a substantially similar manner as described above, theMFP 80 may display an error message, or may continuously display thenavigation screen of FIG. 16. This process is repeated until the NFCcommunication is established between the information providing apparatus30 and the MFP 80.

When it is determined that the NFC communication is established with theMFP 80 (“YES” at S301), the operation proceeds to S303. At S303, the NFCtransmit/receive 31 of the information providing apparatus 30 transmitsthe authentication ID, the function ID, and the function settingsinformation (“function set data”) to the NFC transmit/receive 85 of theMFP 80.

When it is determined that the NFC communication is established with theinformation providing apparatus (“YES” at S302), the operation proceedsto S304. At S304, the NFC transmit/receive 85 of the MFP 80 receives theauthentication ID, the function ID, and the function settingsinformation from the NFC transmit/receive 31 of the informationproviding apparatus 30.

At S305, the authenticator 88 obtains a plurality of authentication IDsthat are stored in the authentication data memory 89.

At S306, the NFC transmit/receive 85 transmits the authentication IDsobtained from the authentication data memory 89 to the informationproviding apparatus 30.

At S307, the authenticator 88 determines whether any one of theauthentication IDs stored in the authentication data memory 89 matchesthe received authentication ID received from the information providingapparatus 30. When there is no authentication ID that matches thereceived authentication ID, the authenticator 88 determines that theinformation providing apparatus 30 is not allowed to use the MFP 80(“NO” at S308), and the operation ends in error. When there is anauthentication ID that matches the received authentication ID, theauthenticator 88 determines that the information providing apparatus 30is allowed to use the MFP 80 (“YES” at S308), and the operation proceedsto S310.

At S308, the NFC transmit/receive 31 of the information providingapparatus 30 receives the authentication IDs from the MFP 80. At S309,the NFC transmit/receive 31 determines whether the MFP 80 allows theinformation providing apparatus 30 to use its function, based onobtained authentication IDs. When there is no authentication ID thatmatches the authentication ID of the information providing apparatus 30,it is determined that use of the MFP 80 is not allowed (“NO” at S309),and the operation ends in error. In such case, the display control 34displays an error screen of FIG. 19 on the display 306. When there is anauthentication ID that matches the authentication ID of the informationproviding apparatus 30, it is determined that use of the MFP 80 isallowed (“YES” at S309), and the operation proceeds to S313.

At S310, the usage determiner 87 obtains use permission information,which is associated with the authentication ID and the function ID,which are received from the information providing apparatus 30, from theauthentication data memory 89.

At S311, the NFC transmit/receive 85 transmits the use permissioninformation, obtained from the authentication data memory 89, to theinformation providing apparatus 30.

At S312, the usage determiner 87 determines whether the functionspecified by the function ID received from the information providingapparatus 30 is allowed by the information providing apparatus 30, usingthe obtained use permission information. When it is determined that thefunction specified by the function ID is not allowed by the informationproviding apparatus 30 (“NO” at S312), the operation ends in error. Whenit is determined that the function specified by the function ID isallowed by the information providing apparatus 30 (“YES” at S312), theoperation proceeds to S315.

At S313, the NFC transmit/receive 31 of the information providingapparatus 30 receives the use permission information (use permissiondata), which is associated with the authentication ID and the functionID that are sent at S303, from the MFP 80.

At S314, the NFC transmit/receive 31 determines whether the MFP 80allows the information providing apparatus 30 to use the functionspecified by the function ID using the use permission information. Whenit is determined that the MFP 80 allows the information providingapparatus 30 to use the function specified by function ID (“YES” atS314), the operation proceeds to S316. When it is determined that theMFP 80 does not allow the information providing apparatus 30 to use thefunction specified by the function ID (“NO” at S314), the operation endsin error.

At S315 and S316, when the use of the specific function of the MFP 80 isallowed by the information providing apparatus 30, the NFCtransmit/receive 31 and the NFC transmit/receive 85 exchangecommunication settings information with each other. More specifically,the NFC transmit/receive 85 of the MFP 80 requests the informationproviding apparatus 30 for communication settings information, andreceives the Bluetooth communication settings information from the NFCtransmit/receive 31. In alternative to transmitting the communicationsettings information at S316, the NFC transmit/receive 31 of theinformation providing apparatus 30 may transmit the communicationsettings information, together with the authentication ID, the functionID, and the function settings information at S303.

At S317, the Bluetooth transmit/receive 32 of the information providingapparatus 30 starts establishing communication with the Bluetoothtransmit/receive 86 of the MFP 80 using the Bluetooth communicationsettings information, and determines whether Bluetooth communication isestablished with the Bluetooth transmit/receive 86 of the MFP 80. Whenit is determined that the Bluetooth communication is not established(“NO” at S317), the operation ends in error. When it is determined thatthe Bluetooth communication is established (“YES” at S317), theoperation proceeds to S318.

At S318, the Bluetooth transmit/receive 32 determines specificprocessing to be performed using the function ID. In this example, it isassumed that the information providing apparatus 30 determines whetherthe function ID is the printer ID or the scanner ID. When it isdetermined that the function ID is the printer ID (“PRINTER” at S318),the operation proceeds to S319. At S319, the Bluetooth transmit/receive32 obtains electronic data specified by the user from the memory 38, andtransmits the specified electronic data to the MFP 80.

At S320, the Bluetooth transmit/receive 86 of the MFP 80 startsestablishing communication with the Bluetooth transmit/receive 32 of theinformation providing apparatus 30 using the Bluetooth communicationsettings information, and determines whether Bluetooth communication isestablished with the Bluetooth transmit/receive 32 of the informationproviding apparatus 30. When is determined that the Bluetoothcommunication is not established (“NO” at S320), the operation ends inerror. When it is determined that the Bluetooth communication isestablished (“YES” at S320), the operation proceeds to S321.

At S321, the usage determiner 87 determines specific processing to beperformed using the function ID. In this example, it is assumed that theMFP 80 determines whether the function ID is the printer ID or thescanner ID. When it is determined that the function ID is the printer ID(“PRINTER” at S321), the operation proceeds to S322. At S322, theBluetooth transmit/receive 86 receives image data to be processed fromthe information providing apparatus 30. At S323, the data processor 106applies processing to the received image data according to the functionsettings information, such as the print settings information receivedfrom the information providing apparatus 30. At S324, the printer 82forms an image of the processed image data on a recording sheet, and theoperation ends.

In this example, the print settings may be set, for example, by aprinter driver that is installed on the information providing apparatus30 or available to the information providing apparatus 30 through aprint server. Alternatively, the print settings may be embedded in theimage data to be processing using a description language such asportable document format (PDF) or post script (PS).

Further, in this example, the image data that is received from theinformation providing apparatus 30 is any data, which is to be processedbased on the print settings information previously set by the user.Alternatively, in case the information providing apparatus 30 isprovided with data processing function, the MFP 80 may receive imagedata to be printed, to which specific print processing is applied.Alternatively, the information providing apparatus may perform a part ofprint processing to image data, while requesting the MFP 80 to perform apart of print processing to processed image data.

At S321, when the usage determiner 87 determines that the scannerfunction is performed (“SCANNER” at S321), the operation proceeds toS325. At S325, the scanner 81 scans an original document, which isprovided to the MFP 80, into scanned image data. At S326, the dataprocessor 106 applies processing to the scanned image data according tothe function settings information, such as the scanner settingsinformation, received from the information providing apparatus 30. AtS327, the Bluetooth transmit/receive 86 transmits the processed imagedata to the information providing apparatus 30.

At S328, the Bluetooth transmit/receive 32 of the information providingapparatus 30 receives the processed image data, i.e., the scanned imagedata, from the Bluetooth transmit/receive 86 of the MFP 80. At S329, thefile controller 39 assigns a file name to a data file of the scannedimage data. In this example, the file name that is input through thenavigation screen of FIG. 16 is assigned.

In case the navigation screen of FIG. 16 is not displayed, or in casethere is no file name input through the navigation screen of FIG. 16,the file controller 39 may arbitrarily assign a file name to the datafile of scanned image data, for example, based on the date and time atwhich the scanned image data is received. For example, assuming that thedate and time at which the scanned image data is received is 10:10:30 onSep. 1, 2011, the file controller 39 assigns the file name“20110901101030.pdf” to the PDF file of the scanned image data.

At S330, the memory control 37 stores the scanned image data, assignedwith the file name, in a predetermined memory area of the memory 38.

At S331, the file controller 39 registers the file name and informationindicating the memory area in which the data is stored in associationwith each other in the file management table of FIG. 10, and theoperation ends.

As described above, through bringing the information providing apparatus30 into close proximity to the MFP 80, the user is able to remotelycontrol the MFP 80 through the information providing apparatus 30 toperform specific processing, such as scanning a paper document intoscanned image data and transmitting the scanned image data to theinformation providing apparatus 30, or transmitting image data to theMFP 80 and printing an image of the image data by the MFP 80.

More specifically, through moving the information providing apparatus 30to a location that is in close proximity to the MFP 80, the informationproviding apparatus 30 and the MFP 80 are able to communicate using theNFC communication standards to automatically exchange communicationsettings information that is required to establish the Bluetoothcommunication, and establish the Bluetooth communication.

Further, a user instruction regarding the function to be performed bythe MFP 80 can be easily transmitted from the information providingapparatus 30 to the MFP 80, for example, using the function ID and thefunction settings information. Accordingly, the user does not have toinput a user instruction regarding data transmission or reception orvarious settings at the MFP 80.

In alternative to the scanner function and the printer function, theuser at the information providing apparatus 30 may request the MFP 80 toperform various other functions, depending on the functions that areavailable through the MFP 80. For example, the user may request the MFP80 to transmit the scanned image data to a specific destination, forexample, as facsimile data, a data file attached to email data, orelectronic data. Further, the MFP 80, which generates the scanned imagedata using the scanner 81, may instruct the outside apparatus on thenetwork such as another MFP to apply specific processing to the scannedimage data based on the function settings information.

Now, operation of establishing communication between the informationproviding apparatus 30 and the terminal 10 is explained according to anexample embodiment of the present invention. The terminal 10 is assumedto be communicating with one or more counterpart terminals 10.

When the operation input 33 of the information providing apparatus 30receives a user instruction for requesting login, the display control 34displays a login screen of FIG. 20 on the display 306. The screen ofFIG. 20 includes an area A31 in which a user ID is input, an area A32 inwhich a password is input, the “OK” button B11, and the “CLEAR” buttonB12.

The user may enter the authentication information, such as the user IDin the area A31 and the password in the area A32, using the operationbutton 308 or the operation panel 309. When the “OK” button B11 isselected, the CPU 301 functioning as the operation input 33 receives theauthentication information entered in the area A31 and the area A32.When the “CLEAR” button B12 is selected, the display control 34 clearsthe authentication information entered in the area A31 and the area A32.

Assuming that the “OK” button B11 is selected after the authenticationinformation is input, the display control 34 displays a navigationscreen of FIG. 21 on the display 306. The navigation screen of FIG. 21requests the user to touch the terminal 10 with the informationproviding apparatus 30 to establish the NFC communication between theterminal 10 and the information providing apparatus 30.

As the user moves the information providing apparatus 30 to a locationin close proximity to the terminal 10, the NFC transmit/receive 31 ofthe information providing apparatus 30 and the NFC transmit/receive 21of the terminal 10 establish the NFC communication. When the NFCcommunication is established, the display control 34 of the informationproviding apparatus 30 clears the screen of FIG. 21 from the display306.

The Bluetooth transmit/receive 32 of the information providing apparatus30 communicates with the Bluetooth transmit/receive 22 of the terminal10, using the connection settings information that is received throughthe NFC communication, to mount the memory 23 of the terminal 10. TheCPU 301 of the information providing apparatus 30 executes the displaydata obtaining program 233, which is stored in the memory 23, to causethe information providing apparatus 30 to additionally have the displaydata obtainer 35.

Referring now to FIG. 22, operation of establishing the Bluetoothcommunication between the terminal 10 and the information providingapparatus 30 and executing the display data obtaining program 233 on theinformation providing apparatus 30, is explained according to an exampleembodiment of the present invention. The operation of FIG. 22 isperformed after establishing the NFC communication between the terminal10 and the information providing apparatus 30.

At S11, the NFC transmit/receive 31 of the information providingapparatus 30 transmits the authentication information, which is obtainedby the operation input 33, to the NFC transmit/receive 21 of theterminal 10.

When the NFC transmit/receive 21 of the terminal 10 receives theauthentication information of the user, at S21, the external informationdeterminer 20 refers to the authentication table 232 stored in thememory 23 to determine whether the user is an authenticated user basedon the received authentication information. More specifically, theexternal information determiner 20 of the terminal 10 determines whetherthe authentication table 232 stores a user ID and a password thatrespectively match the received user ID and the received password. Whenthere is the user ID and the password that match, the externalinformation determiner 20 determines that the user, or the informationproviding apparatus 30, is authenticated. In this example illustrated inFIG. 22, it is assumed that the user is authenticated.

At S13, the NFC transmit/receive 21 of the terminal 10 transmits an OKsignal indicating that the user is authenticated to the NFCtransmit/receive 31 of the information providing apparatus 30.

When there is no user ID and password that match the received user IDand password, at S13, the NFC transmit/receive 21 of the terminal 10transmits a NG signal indicating that authentication fails to the NFCtransmit/receive 31 of the information providing apparatus 30. Theinformation providing apparatus 30 causes the display control 34 todisplay an error screen, such as the screen of FIG. 23, and theoperation ends.

When the NFC transmit/receive 31 of the information providing apparatus30 receives the OK signal indicating that authentication is successfulfrom the NFC transmit/receive 21 of the terminal 10, at S14, the NFCtransmit/receive 31 reads out the connection settings information thatis required for the Bluetooth communication, such as the connectionsettings information of the second communication I/F 112 functioning asthe Bluetooth transmit/receive 22. At S14, the NFC transmit/receive 31of the information providing apparatus 30 transmits the connectionsettings information to the terminal 10.

At S15, the Bluetooth transmit/receive 32 of the information providingapparatus 30 sets for the Bluetooth communication with the terminal 10,using the connection settings information that is obtained at S14.Further, the Bluetooth transmit/receive 22 of the terminal 10 startsestablishing the Bluetooth communication with the Bluetoothtransmit/receive 32 of the information providing apparatus 30. When theBluetooth communication is established, the Bluetooth transmit/receive22 of the terminal 10 transmits a OK signal to the Bluetoothtransmit/receive 32 of the information providing apparatus 30. When theBluetooth communication fails, the Bluetooth transmit/receive 22 of theterminal 10 transmits a NG signal to the Bluetooth transmit/receive 32of the information providing apparatus 30.

When the Bluetooth communication is established, that is, when theBluetooth transmit/receive 32 of the information providing apparatus 30receives the OK signal from the Bluetooth transmit/receive 22 of theterminal 10, at S16, the display data communicator 36 of the informationproviding apparatus 30 accesses the memory 23 of the terminal 10 throughthe Bluetooth transmit/receive 32 and the Bluetooth transmit/receive 22and mounts the memory area 23 of the terminal 10 on a file system of theinformation providing apparatus 30.

When the Bluetooth communication is not established, that is, when theBluetooth transmit/receive 32 of the information providing apparatus 30receives the NG signal from the Bluetooth transmit/receive 22 of theterminal 10, the display control 34 of the information providingapparatus 30 displays an error screen, such as the screen of FIG. 23, onthe display 306 and the operation ends.

When mounting of the memory 23 is completed, at S17, the display datacommunicator 36 of the information providing apparatus 30 accesses afile of the display data obtaining program 233 stored in the memory 23to execute the display data obtaining program 233. Upon execution of thedisplay data obtaining program 233, the information providing apparatus30 is additionally provided with the display data obtainer 35, whichobtains data displayed by the display control 34 on the display 306 asdisplay data.

Referring now to FIG. 24, operation of obtaining the display data,performed by the information providing apparatus 30, is explainedaccording to an example embodiment of the present invention.

At S2301, the memory control 37 of the information providing apparatus30 reads out the file management table from the memory 38.

At S2302, the display control 34 displays a file selection screen on thedisplay 306.

At S2303, the display control 34 displays a file name for each one ofdata files that are stored in the file management table, on the fileselection screen, using information obtained from the file managementtable.

FIG. 25 illustrates an example file selection screen displayed on thedisplay 306, which lists a plurality of file names of the data filesmanaged by the file management table of FIG. 10. In this exampleillustrated in FIG. 25, information indicating a location of the datafile is not displayed. Alternatively, information indicating thelocation of the data file may be caused to be displayed.

At S2304, the file control 39 of the information providing apparatus 30determines whether a file name displayed on the file selection screen isselected by the user. When selection of file name is received (“YES” atS2304), at S2305, the file controller 39 obtains electronic dataassigned with the selected file name from the memory 38 through thememory control 37, and the operation ends.

In the above-described example, the information providing apparatus 30requests the user to enter the authentication information through thelogin screen of FIG. 20. Alternatively, the information providingapparatus 30 may be previously stored with the authenticationinformation, for example at the time of shipping, in a manner that isreadable by the NFC transmit/receive 31. In such case, the user does nothave to enter the authentication information, as the informationproviding apparatus 30 is able to automatically send the userauthentication information to the outside apparatus.

As described above, the information providing apparatus 30 isauthenticated when the connection between the information providingapparatus 30 and the terminal 10 is established. When authenticationfails, the information providing apparatus 30 is not allowed to executethe display data obtaining program 233 to perform operation of thedisplay data obtainer 35, thus preventing transmission of display datato the terminal 10. This improves the security in the transmissionsystem, as the display data may contain confidential information.Further, as long as the communication is established between theinformation providing apparatus 30 and the terminal 10, the display datacommunicator 36 of the information providing apparatus 30 mounts thememory 23 of the terminal 10 to execute the display data obtainingprogram 233 stored in the memory 23. The display data obtaining program233 does not have to be previously installed in the informationproviding apparatus 30, such that the display data obtainer 35 is addedonly when it is needed. This suppresses the workload for the user as theuser does not have to prepare in prior to videoconference, and furthersaves a memory space of the memory 38 of the information providingapparatus 30. Further, the scanned image data, which is obtained by theMFP 80, can be easily shared among the terminals 10, throughtransmitting the scanned image data to the terminal 10.

Referring now to FIGS. 26A, 26B, 27, 28A, and 28B, operation oftransmitting image data being displayed on the display 306 of theinformation providing apparatus 30, performed by the informationproviding apparatus 30, is explained according to an example embodimentof the present invention.

As illustrated in FIGS. 26A and 26B, the display data obtainer 35 of theinformation providing apparatus 30 displays a start button B31, whichallows the user to instruct starting of transmission of display data tothe terminal 10. The screens of FIG. 26A and 26B are displayed on thedisplay 306, which respectively contain different display data.

When the display data obtainer 35 detects selection of the start buttonB31 through the operation input 33, the display data obtainer 35 obtainsfiles of image data being displayed on the display 306, and transmitsthe obtained files of imaged data to the terminal 10 through the displaydata communicator 36. The start button B31, which is also displayed as apart of the screen, is not included as display data to be transmitted tothe terminal 10.

FIG. 27 is a data sequence diagram illustrating operation oftransmitting display data from the information providing apparatus 30 tothe terminal 10, according to an example embodiment of the presentinvention. In this example, it is assumed that the first terminal 10 aaat a first site communicates with the second terminal 10 ca at a secondsite via the relay device 40. Further, the first information providingapparatus 30 a, which is provided at the first site, establishes theBluetooth communication with the first terminal 10 aa The secondinformation providing apparatus 30 c, which is provided at the secondsite, establishes the Bluetooth communication with the second terminal10 ca. The following explains the example case in which the displaydata, which is transmitted from the first information providingapparatus 30 a to the first terminal 10 aa, is shared among theterminals 10 participating in videoconference such as the secondterminal 10 ca.

The external information determiner 20 of the terminal 10 stores thevalue of a receive flag in a memory such as the RAM 103, which indicateswhether transmission of the display data is completed at the counterpartterminal 10 based on information received from the relay device 40. Thevalue of the receive flag indicates whether the display data is beingtransmitted from the information providing apparatus 30. The receiveflag “true” indicates that the display data is being transmitted. Thereceive flag “false” indicates that the display data is not transmitted.The receive flag is initially set to “false”.

At S21, the operation input 33 of the first information providingapparatus 30 a receives a user instruction for starting transmission ofimage data being displayed on the display 306, through selection of thestart button B31. At S22, the display data obtainer 35 of theinformation providing apparatus 30 a transmits notice to the terminal 10aa, which indicates that transmission of display data is started.

At S23, the first terminal 10 aa, which receives the notice indicatingstarting of transmission of display data, checks a status of a receiveflag at the external information determiner 20.

When the status of the receive flag is false, at S24, the first terminal10 aa sends a distribution start request to the relay device 40, whichrequests starting of transmission of display data to the counterpartterminal 10 such as the second terminal 10 ca. The relay device 40 ispreviously selected by the selection unit 18 of the first terminal 10 aaas described above referring to FIG. 5. The first terminal 10 aa refersto the management table 231 to obtain the terminal ID of the secondterminal 10 ca, and obtains the address information of the secondterminal 10 ca such as an IP address or a domain name of the secondterminal 10 ca using the obtained terminal ID. The first terminal 10 aatransmits address information of the first terminal 10 aa and theaddress information of the second terminal 10 ca to the relay device 40to request the relay device 40 to transmit the display data to thesecond terminal 10 ca.

When the distribution start request is received from the first terminal10 aa, at S25 and S26, the relay device 40 sends a distribution startevent to each one of the first terminal 10 aa that sends thedistribution start request and the second terminal 10 ca that iscommunicating with the first terminal 10 aa.

When the distribution start event is received from the relay device 40,at S27, the external information determiner 20 of the first terminal 10aa sends transmit start data, which requests the information providingapparatus 30 a to start transmitting the display data.

At S28, the display data communicator 36 of the first informationproviding apparatus 30 a transmits display data obtained by the displaydata obtainer 35 to the second terminal 10 ca through the first terminal10 aa.

More specifically, the display data obtainer 35 of the first informationproviding apparatus 30 a obtains image data of a screen being displayedon the display 306 as display data. The display data communicator 36transmits the display data obtained by the display data obtainer 35 tothe first terminal 10 aa through the Bluetooth transmit/receive 32.

When the first terminal 10 aa receives the display data from the firstinformation providing apparatus 30 a through the Bluetoothcommunication, the external information determiner 20 outputs thedisplay data to the data transmit/receive 11. The data transmit/receive11 transmits the display data, with captured image data captured by theimaging unit 14 and sound data captured by the sound input 15, to therelay device 40 through the communication network 2.

The relay device 40 transmits the conference data received from thefirst terminal 10 aa to each one of the terminals 10 that arecommunicating, which includes the display data received from the firstinformation providing apparatus 30 a. The display control 17 of thefirst terminal 10 aa displays the display data, which is received fromthe relay device 40, instead of displaying the display data receiveddirectly from the first information providing apparatus 30 a. In asubstantially similar manner, the display control 17 of the firstterminal 10 aa displays the captured image data, which is received fromthe relay device 40, instead of displaying the captured image datacaptured by the camera 113.

By displaying the conference data based on the conference data receivedfrom the relay device 10, the time at which the display data is receivedand displayed at each terminal 10 will be substantially the same for allthe terminals 10 that are communicating. For example, assuming that theuser at the information providing apparatus 30 a displays a next page ofthe presentation material of the display data, the screen beingdisplayed at each terminal 10 reflects the change in page beingdisplayed at substantially the same time. Further, the screen at eachsite reflects the captured image data that is captured at each site atsubstantially the same time.

Referring back to FIG. 27, as the display data communicator 36 startstransmission of the display data, at S29, the display data obtainer 35changes the start button B31 (FIGS. 26A and 26B) being displayed on thedisplay 306 of the first terminal 10 aa to a stop button B32 (FIGS. 28Aand 28B). The stop button B32 is used to instruct the informationproviding apparatus 30 to stop transmission of the display data. Forexample, in case the display 306 of the information providing apparatus30 displays the screen of FIG. 26A, the screen of FIG. 26A may beswitched to a screen of FIG. 28A including the stop button B32 inreplace of the start button B31. In case the display 306 of theinformation providing apparatus 30 displays the screen of FIG. 26B, thescreen of FIG. 26B may be switched to a screen of FIG. 28B including thestop button B32 in replace of the start button B31. When the stop buttonB31 is selected by the user, transmission of the display data isstopped.

Referring back to FIGS. 27, at S30 and S31, for the terminal 10 that isreceiving the display data from the information providing apparatus 30a, the external information determiner 20 sets the receive flag to“true”.

At S32 and S33, the display control 17 arranges image data to bedisplayed on the screen such as the display data or the captured imagedata. More specifically, as described above referring to FIG. 13, thedisplay 130 of the terminal 10 may display the display data transmittedfrom the information providing apparatus 30 a in the first display areaA21, while displaying the captured image data of each terminal 10 in thesecond display areas A22 and A23.

By displaying the start button B31 on the screen, which instructstransmission of image data of the screen being displayed on the display306, the user at the information providing apparatus 30 can easilyinstruct the information providing apparatus 30 to start transmission ofthe display data. Further, the information providing apparatus 30changes between the start button B31 and the stop button B32, dependingon whether the display data is being transmitted or not. With thisbutton reflecting transmission of the display data, the user may beprevented from instructing the information providing apparatus 30 totransmit the display data, which should not be public, by mistake.

Referring now to FIG. 29, operation of switching the state in which thedisplay data received from the first information providing apparatus 30a is displayed, to the state in which the display data received from thesecond information providing apparatus 30 c is displayed, performed bythe transmission system of FIG. 1, is explained according to an exampleembodiment of the present invention. In this example, it is assumed thatoperation of FIG. 29 is performed after operation of FIG. 27, inresponse to a user instruction for starting transmission of display dataat the second terminal 10 ca.

At S41, the operation input 33 of the second information providingapparatus 30 c receives a user instruction for selecting the startbutton B31. At S42, the display data obtainer 35 of the secondinformation providing apparatus 30 c sends notification to the secondterminal 10 ca, which indicates starting of transmission of the displaydata.

At S43, the second terminal 10 ca, which receives the notificationindicating starting of transmission of the display data, checks thevalue of the receive flag using the external information determiner 20.When it is determined that the value of the receive flag is “true”, atS44, the external information determiner 20 transmits a distribution endrequest, which requests the relay device 40 to stop transmission of thedisplay data to the relay device 40.

When the distribution end request is received from the second terminal10 ca, at S45 and S46, the relay device 40 transmits a distribution endevent to each one of the terminals 10 that are communicating. Thedistribution end event notifies stopping of distribution of the displaydata.

At S47 and S48, the external information determiner 20 of the terminal10 that receives the distribution end event transmits transmission enddata to the information providing apparatus 30, which requests to stoptransmission of the display data.

At S49, the display data obtainer 35 of the first information providingapparatus 30 a, which is transmitting the display data, stopstransmission of the display data in response to the transmission enddata.

Further, when the transmit end data is received, at S50 and S51, thedisplay data obtainer 35 of each of the information providingapparatuses 30 a and 30 c changes a screen of the display 306 such thatthe start button B31 is displayed in replace of the stop button B32. Forexample, in alternative to displaying the stop button B32 on the display306 of the first information providing apparatus 30 a as illustrated inFIG. 28A, the first information providing apparatus 30 a displays thestart button B31 as illustrated in FIG. 26A. The second informationproviding apparatus 30 c, which has been displaying the start buttonB31, continues to display the start button B31 as illustrated in FIG.26A.

At S52 and S53, the external information determiner 20 of the terminal10 sets the value of the receive flag to “false”. At S54 and S55, thedisplay control 17 clears the display data being displayed on the firstdisplay area A21 of the screen, and rearranges a location of thecaptured image data of each terminal 10 on the screen.

At S56, the external information determiner 20 of the second terminal 10ca transmits a distribution start request to the relay device 40. S57 toS65 are performed in a substantially similar manner as described abovereferring to S25 to S33 of FIG. 27.

As the display data received from the second information providingapparatus 30 c is distributed to each terminal 10, the display control17 of each terminal 10 arranges a layout of the screen such that thedisplay data of the second information providing apparatus 30 c isdisplayed in the first display area A21 and the captured image data ofeach terminal 10 in the second display area.

As described above, even when the display data received from the firstinformation providing apparatus 30 a is being displayed at each terminal10, as the user instructs for starting distribution of the display dataof the second information providing apparatus 30 c, the display at eachterminal changes the display from a screen displaying the display dataof the first information providing apparatus 30 a, to a screendisplaying the display data of the second information providingapparatus 30 c.

Referring now to FIG. 30, operation of stopping transmission of thedisplay data being transmitted from the information providing apparatus30, performed by the transmission system 1, is explained according to anexample embodiment of the present invention. The operation of FIG. 30 isperformed after performing the operation of FIG. 29, when the userselects the stop button B32 at the information providing apparatus 30 c.

At S71, the operation input 33 of the second information providingapparatus 30c receives a user instruction for stopping transmission ofdisplay data being displayed on the display 306, through selection ofthe stop button B32. At S72, the display data obtainer 35 of theinformation providing apparatus 30 c transmits notice to the secondterminal 10 ca, which indicates that transmission of display data isstopped. S73 to S85 are performed in a substantially similar manner asdescribed above referring to S43 to S55 of FIG. 29.

As transmission of the display data from the information providingapparatus 30 c is stopped, each terminal 10 displays only the capturedimage data of the terminals 10. For example, the terminal 10 may displaya screen of FIG. 12, which arranges the image data of the user who iscurrently speaking in the first display area A21. By selecting the stopbutton B32, the user at the information providing apparatus 30 caneasily stop transmission of the display data to the terminal 10.

In the above-described example illustrated in FIGS. 27, 29, and 30, theuser just brings the information providing apparatus 30 into closeproximity to the terminal 10 to start sharing the image data beingdisplayed at the information providing apparatus 30 with the otherterminals 10. The user does not have to previously connect theinformation providing apparatus 30 with the terminal 10 through thecommunication network 2, thus reducing the workload of the user inpreparing for videoconference. Further, the administrator of thetransmission system 1 does not have to provide any additional networkinfrastructure, which may otherwise be required to connect theinformation providing apparatus 30 with the terminal 10.

In the above-described example, the terminal 10 sends the distributionstart request or the distribution end request to the relay device 40according to a user instruction received from the information providingapparatus 30. Accordingly, the relay device 40 does not have to manageinformation indicating which one of the terminals 10 is transmitting thedisplay data received from the information providing apparatus 30. Thissuppresses the workload of the relay device 40 such that one relaydevice 40 is able to manage a larger number of terminals 10, thusimproving scalability of the transmission system 1.

In the above-described example, a graphical user interface (GUI) thatallows the user to instruct whether to start transmission or stoptransmission is displayed on the display 306 in the form of button.Alternatively, the GUI for instructing whether to start or stoptransmission may be displayed in the form of a menu. Alternatively, thestart button B31 and the stop button B32 may be labeled, respectively,with text data “Start image sharing” and “End image sharing”.Alternatively, the start button B31 and the stop button B32 may bedisplayed together with the text data indicating a status oftransmission of the display data such as “Image can be shared” and“Image is being shared”.

As described above, in one example, the user brings the informationproviding apparatus 30 into close proximity to the MFP 80 to cause theMFP 80 to scan a paper document into scanned image data and send thescanned image data to the information providing apparatus 30. Theinformation providing apparatus 30 stores the scanned image data in apredetermined memory area, and registers association informationindicating the association between a file name and a memory area of thescanned image data in the file management table. The user further bringsthe information providing apparatus 30 into close proximity to theterminal 10 to cause the information providing apparatus 30 to transmitimage data, i.e., display data to the terminal 10. The terminal 10shares the display data received from the information providingapparatus 30 with the counterpart terminal 10. In this manner, the imagedata, even when it is originally provided in a paper form, can be easilyshared among the terminals 10 during videoconference.

FIG. 31 is a schematic block diagram illustrating functional structuresof a terminal 3110, the information providing apparatus 30, and the MFP80, according to an example embodiment of the present invention. In thisexample, operation of controlling transmission of display data receivedfrom the information providing apparatus 30 is performed differentlythan the above-described operation.

As illustrated in FIG. 31, the terminal 3110 includes the datatransmit/receive 11, the operation input 12, the login request 13, theimaging unit 14, the sound input 15, the sound output 16, the displaycontrol 17, the selection unit 18, the memory control 19, the externalinformation determiner 20, a location data selector 3125, the NFCtransmit/receive 21, and the Bluetooth transmit/receive 22. These unitsshown in FIG. 31 correspond to a plurality of functions or functionalmodules, which are executed according to an instruction of the CPU 101(FIG. 2) that is generated according to the terminal control programbeing loaded from the flash memory 104 onto the RAM 103. The terminal3110 further includes a memory 23, which may be implemented by the SSD105 of FIG. 2.

In this example, the data transmit/receive 11, the operation input 12,the login request 13, the imaging unit 14, the sound input 15, the soundoutput 16, the display control 17, the selection unit 18, the memorycontrol 19, the external information determiner 20, the NFCtransmit/receive 21, and the Bluetooth transmit/receive 22 aresubstantially similar in function and operation to those units describedabove referring to FIG. 5.

The memory 23 includes the management table 231, the authenticationtable 232, the display data obtaining program 233, the driver thattransmits or receives data, a location data management table 3123, andan event flag table 3124. The management table 231, the authenticationtable 232, the display data obtaining program 233, the driver for datatransmission or reception are substantially similar in function andoperation to those described above referring to FIG. 5.

The location data selector 3125 sends location data indicating aspecific location of a screen in which the image data is displayed, tothe display control 17. Based on the location data, the display control17 displays the image data such as the captured image data and thedisplay data at a specific area on the screen. More specifically, thelocation data selector 3125 selects the value of a shared flag stored inthe event flag table 3124 based on a type of display data distributionevent, and obtains location data that is associated with the selectedvalue of the shared flag using the location data management table 3123.

Now, operation of controlling display of the display data is explainedaccording to an example embodiment of the present invention.

FIG. 32 illustrates an example data structure of the location datamanagement table 3123 stored in the memory 23. The location datamanagement table 3123 stores information to be used for managingarrangement of the display data when the display data is displayed onthe screen. The location data management table 3123 stores, for each oneof location data numbers, location data and a shared flag value inassociation with each other.

The location data number is identification information that uniquelyidentifies each record of the information stored in the location datamanagement table 3123. The location data is information indicatingspecific location at which the captured image data or the display datais displayed on a screen. The location data includes the value“VIEW_MULTI” and the value “SHARED_MULTI”. When the value “VIEW_MULTI”is selected, the captured image data of the terminal 3110 is displayed.When the value “SHARED_MULTI” is selected, the captured image data ofeach terminal 3110 and the display data are displayed.

The value of shared flag is determined by the location data selector3125. Using the event flag table 3124 of FIG. 36, the location dataselector 3125 selects the value of shared flag based on a type ofdistribution event that is detected, and further obtains the locationdata that is associated with the obtained value of shared flag. Morespecifically, as illustrated in FIG. 36, the value of shared flag isdetermined so as to reflect a specific event regarding distribution ofthe display data.

The terminal 3110 receives the display data, either from the informationproviding apparatus 30 that is connected to the terminal 3110 or fromthe information providing apparatus 30 that is connected to the otherterminal 3110, through the relay device 40. In either of these cases,the shared flag has the value “SHARED”. When the terminal 3110 does notreceive any display data, the shared flag has the value “UNSHARED”.

In the location data management table 3123, the shared flag value“SHARED” is associated with the “SHARED_MULTI” of the location data. Theshared flag value “UNSHARED” is associated with the “VIEW_MULTI” of thelocation data.

In alternative to the example case illustrated in FIG. 32, the sharedflag value and the location data may be associated in various otherways. For example, the different values “SHARED 1” and “SHARED 2” ofshared flag may be assigned to the first case in which the terminal 3110receives the display data from the information providing apparatus 30connected to the terminal 3110, and the second case in which theterminal 3110 receives the display data from the information providingapparatus 30 connected to the other terminal 3110, respectively. Theshared flag values “SHARED 1” and “SHARED 2” may be associated withlocation data that are different from each other. The location datamanagement table 3123 may be set by any user at the terminal 3110.

FIG. 33 illustrates an example screen, which may be displayed on thedisplay 130 of the terminal 3110. The screen of FIG. 33 includes aplurality of areas 1 to 4, with the area 1 having a size larger thanthat of the other area. In this example, the captured image data or thedisplay data may be displayed on one of the areas 1 to 4 such that up tofour different image data may be displayed on the screen. The locationdata is used to assign one of the areas 1 to 4 to each of image data tobe displayed on the screen.

In this example, for each one of the location data managed by thelocation data management table 3123, arrangement of captured image dataor display data to each area on the screen of FIG. 33 is defined asillustrated in FIG. 34.

In case of the location data “VIEW_MULTI”, the first captured image data1, the second captured image data 2, etc. are respectively assigned tothe areas 1, 2, etc. More specifically, the captured image data of theterminals 10 that are communicating are respectively assigned to theareas 1 to 4 in a predetermined order. For example, assuming that thefirst and second terminals 3110 are connected through the managementsystem 50 to carry out videoconference, the screen of FIG. 33 includesthe captured image data of one of the two terminals 3110 in the area 1,and the captured image data of the other one of the two terminals 3110in the area 2. For example, at the first terminal 3110, the displaycontrol 17 displays the image data of the user at the second terminal3110 in the area 1, and the image data of the user at the first terminal3110 in the area 2.

In another example, the display control 17 displays the captured imagedata of the user who is currently speaking in the area 1, which iscaptured by the imaging unit 14 of the terminal 3110. For example, whenthe sound input 15 of the first terminal 3110 detects a sound signalthat is greater than a predetermined level, the data transmit/receive 11of the first terminal 3110 sends the terminal ID of the first terminal3110 to the relay device 40. The relay device 40 transmits the terminalID of the first terminal 3110 to the terminals 3110 participating in thevideoconference. Based on the received terminal ID of the first terminal3110, each terminal 3110 is able to specify the captured image data ofthe first terminal 3110 to be displayed in the first area 1. Inalternative to transmitting the terminal ID of the first terminal 3110to the relay device 40, the first terminal 3110 may transmit theterminal ID to the management system 50. In such case, the managementsystem 50 manages each terminal 3110 to display the captured image dataof the first terminal 3110 in the area 2. In this example, the capturedimage data of the user who is not currently speaking, which is obtainedat the other terminal 3110, is displayed in the area 2.

In case of the location data “SHARED_MULTI”, the display data isassigned to the area 1, while the captured image data are respectivelyassigned to the areas 2 to 4. For example, assuming that the first andsecond terminals 3110 are connected through the management system 50 tocarry out videoconference, the screen of FIG. 33 includes the capturedimage data of one of the two terminals 3110 in the area 2, and thecaptured image data of the other one of the two terminals 3110 in thearea 3. The display data is assigned with the first area 1.

The location data selector 3125 sets the value of shared flag to“SHARED” or “UNSHARED”, depending on a type of display data distributionevent. The distribution event indicates whether the terminal 3110receives the display data from the information providing apparatus 30connected to the terminal 3110, or receives the display data from theinformation providing apparatus 30 connected to the other terminal 3110.Further, in this example, the value of shared flag may be set to“SHARED”, “1”, or “ON”, when the display data is being transmitted. Thevalue of shared flag may be set to “UNSHARED”, “0”, or “OFF”, when thedisplay data is not transmitted.

When the value of shared flag is updated, the location data selector3125 refers to the location data management table 3123 to obtain thelocation data that is associated with the updated value of shared flag.Based on the obtained location data, the location data selector 3125causes the display control 17 to change layout of the image data, suchas the captured image data or the display data, on the screen.

FIG. 35 illustrates the transitional change in state of the locationdata selected by the location data selector 3125. The initial state ofthe location data may be set to either the location data number “1” orthe location data number “2”, depending on whether the terminal 3110receives the display data after being executed. As illustrated in FIG.35, assuming that the initial state of the location data is the locationdata number “1”, and the location data selector 3125 sets the value ofshared flag to “SHARED”, the location data selector 3125 selects thelocation data number “2”. Assuming that the initial state of thelocation data is the location data number “2”, and the location dataselector 3125 sets the value of shared flag to “UNSHARED”, the locationdata selector 3125 selects the location data number “1”. Assuming thatthe initial state of the location data is the location data number “1”,and the location data selector 3125 sets the value of shared flag to“UNSHARED”, the location data selector 3125 selects the location datanumber “1”. Assuming that the initial state of the location data is thelocation data number “2”, and the location data selector 3125 sets thevalue of shared flag to “SHARED”, the location data selector 3125selects the location data number “2”.

In addition to controlling display of the image data on the display 130,the terminal 3110 controls display of a screen such as a menu to bedisplayed on the display 306 of the information providing apparatus 30.The event flag table 3124 of FIG. 36 additionally stores, for each typeof display data distribution event, the value of display control flagthat is determined by the display control 17 in association with thevalue of shared flag that is determined by the location data selector3125.

Examples of the distribution event, which is sent from the relay device40, include the distribution start event transmitted from the terminal3110 (“distribution start event”), the distribution start eventtransmitted from the other terminal 3110 (“distribution start fromanother event”), the distribution end event transmitted from theterminal 3110 (“distribution end event”), and the distribution end eventtransmitted from the other terminal 3110 (“distribution end from anotherevent”). The value of shared flag is “SHARED” for the two types ofdistribution start event. The value of shared flag is “UNSHARED” for thetwo types of distribution end event.

The value of display control flag is “SHARED” for the first type ofdistribution start event “distribution start event”. The value ofdisplay control flag is “SHARED_ANOTHER” for the second type ofdistribution start event “distribution start from another event”. Thevalue of display control flag is “UNSHARED” for the two types ofdistribution end event.

The terminal 3110 obtains the value of display control flag that isassociated with the specific type of event from the event flag table3124, and transmits the obtained value of the display control flag tothe information providing apparatus 30. The display control 34 of theinformation providing apparatus 30 changes a menu to be displayed on thedisplay 306, according to the value of display control flag.

FIG. 37A illustrates the transitional change in state of the menu to bedisplayed at the information providing apparatus 30. Informationregarding the transitional change may be stored in the memory 38 in theform of transitional change table. The display 306, when executed,displays the menu “start sharing” based on assumption that the displaydata is not transmitted to the terminal 3110. The menu “start sharing”is a menu that starts sharing of display data being displayed on thedisplay 306 among the terminals 3130, when selected. As described abovereferring to FIGS. 28A and 28B, the menu “start sharing” may beimplemented by the “start sharing” button such as the start button B32,which is selected by the user to instruct transmission of display data.

Still referring to FIG. 37A, when the information providing apparatus30, which displays the menu “start sharing” on the display 306, receivesthe display control flag “SHARED” from the terminal 3130, the displaycontrol 34 of the information providing apparatus 30 displays the menu“end sharing”. When selected, the menu “end sharing” stops transmissionof the display data being displayed on the display 306 with the otherterminals 3110 to which the information providing apparatus 30 is notconnected. As described above referring to FIGS. 26 and 28, the menu“end sharing” may be implemented by the stop button B32, which isselected by the user to instruct distribution of display data to bestopped.

Referring to FIG. 37A, when the information providing apparatus 30receives the display control flag “UNSHARED” or “SHARED_ANOTHER” fromthe terminal 3130 while displaying the menu “end sharing”, the displaycontrol 34 of the information providing apparatus 30 displays the menu“start sharing” to wait for a user instruction that starts sharing ofdisplay data.

When the information providing apparatus 30 receives the display controlflag other than “SHARED” from the terminal 3130 while the menu “startsharing” is displayed, the display control 34 of the informationproviding apparatus 30 continues to display the menu “start sharing”.When the information providing apparatus 30 receives the display controlflag “SHARED” from the terminal 3130 while the menu “end sharing” isdisplayed, the display control 34 of the information providing apparatus30 continues to display the menu “end sharing”.

As described above, the display control flag is associated with eachtype of distribution event. Using this association information, theterminal 3110 selects the value of display control flag that isassociated with a specific distribution event, and sends the displaycontrol flag to the information providing apparatus 30. The displaycontrol 34 of the information providing apparatus 30 determinesappearance of the screen to be displayed on the display 306 of theinformation providing apparatus 30 based on the value of display controlflag, such as whether to display the menu “start sharing” or the menu“end sharing”.

The display control 34 may display shared state information indicating acurrent state of sharing the display data based on the value of displaycontrol flag, in addition to the button that reflects the menu “startsharing” or “end sharing”.

FIG. 37B illustrates example shared state information indicating a stateof sharing the display data, in association with the value of displaycontrol flag. The association information of FIG. 37B is stored in thememory 38, for example, together with the transitional change table ofFIG. 37A. As described below referring to FIGS. 39A to 39D, the sharedstate information is displayed on the screen of the display 306 in theform of message such that the user is able to instantly recognize thecurrent state of sharing the display data. In this example, there arethree types of shared states including: (a) the terminal 3110 does notshare any display data (“UNSHARED”); (b) the terminal 3110 shares thedisplay data of the information providing apparatus 30 connected to theterminal 3110 (SHARED); and (c) the terminal 3110 shares the displaydata of the information providing apparatus 30 connected to the otherterminal 3110 (SHARED_ANOTHER).

FIG. 38 is a data sequence diagram illustrating operation of controllingdisplay of a screen at the terminal 3110 and a screen at the informationproviding apparatus 30, performed by the transmission system of FIG. 31,according to an example embodiment of the present invention. In thisexample, it is assumed that the first terminal 3110 aa is havingvideoconference with the second terminal 3110 ca through the relaydevice 40. The first information providing apparatus 30 a is provided ata site where the first terminal 3110 aa is provided. The secondinformation providing apparatus 30 c is provided at a site where thesecond terminal 3110 ca is provided.

Unless the terminal 3110 starts receiving the display data, the locationdata selector 3125 selects the location data number “1”, whichcorresponds to the display flag value “UNSHARED” of the location datamanagement table 3123. In such case, the terminal 3110 displays thecaptured image data of each of the first terminals 3110 aa and secondterminal 3110 ca on the display 130.

More specifically, referring back to FIG. 12, the display control 17displays the captured image data of the first terminal 3110 aa and thesecond terminal 3110 ca, which are respectively received from the relaydevice 40, on the respective display areas of the screen. The displaycontrol 17 may select one of the captured image data to be displayed inthe first display area A21, based on whether which site of the user iscurrently speaking or according to the user instruction that may beinput through the operation input 12.

Unless the terminal 3110 detects a distribution event, the displaycontrol 17 does not send any information regarding the display controlflag to the information providing apparatus 30, or sends the “UNSHARED”display control flag to the information providing apparatus 30.Accordingly, the display control 34 of the information providingapparatus 30 displays the menu “start sharing” on the display 306, whichis associated with the display control flag “UNSHARED” that may beinitially set or may be set according to the “UNSHARED” display controlflag received from the terminal 3110.

FIGS. 39A to 39D illustrate example screens that may be displayed on thedisplay 306 of the information providing apparatus 30. Each of thescreens of FIGS. 39A to 39D include a first menu 401 and a second menu402. The first menu 401 displays thereon the menu “start sharing” or“end sharing”, which causes, when selected by the user, to change thestate of sharing the display data. The second menu 402 displays thereona message that describes the current state of sharing the display data.

When there is no session established with the outside apparatus, thedisplay 306 displays the screen of FIG. 39A. The first menu 401 shows amark indicating that there is no information regarding sharing of thedisplay data. The second menu 402 displays thereon the message “nomeeting” to indicate that there is no conference being performed.

The screen of FIG. 39B is displayed when the display data is not sharedamong the terminals 3110. The screen of FIG. 39B displays presentationdata that may be read out from the memory of the information providingapparatus 30, and a window displaying the state of the informationproviding apparatus 30. The first menu 401 displays thereon the “startsharing” button, which allows the user to request sharing of the displaydata when selected. The second menu 402 displays thereon the message“not shared” to indicate that the display data is not shared. When theuser decides to share the display data being displayed on the screenwith the other terminals 3110, the user selects the “start sharing”button 401. When selection of the “start sharing” button 401 isdetected, the information providing apparatus 30 starts transmission ofthe display data to the terminal 3110. The user may select the “startsharing” button 401 by touch panel such as touching the operation panel309 (FIG. 3) or by using the operation button 308 (FIG. 3) such as anoperation key.

Referring back to FIG. 38, at S3801, the operation input 33 of the firstinformation providing apparatus 30 a receives a user instruction forselecting the “start sharing” button displayed on the display 306. AtS3802, the display data communicator 36 sends notice indicating thattransmission of the display data is started to the first terminal 3110aa, and starts transmitting the display data to the first terminal 3110aa.

At S3803, the display control 17 of the first terminal 3110 aa requeststhe relay device 40 to start transmission of the display data, andstarts transmitting the display data to the relay device 40.

At S3804, the relay device 40 sends notice including the “distributionstart event” to the first terminals 3110 aa, and starts transmitting thedisplay data to the first terminal 3110 aa. The relay device 40 mayapply processing to the display data received from the first terminal3110 aa so as to change image quality of the display data, beforetransmitting the display data to the first terminal 3110 aa.

When the first terminal 3110 aa receives the distribution start event,at S3805, the first terminal 3110 aa refers to the event flag table 3124to set the shared flag value to “SHARED”. At S3806, the location dataselector 3125 of the first terminal 3110 aa selects the location datanumber “2” in the location data management table 3123 using the sharedflag “SHARED”, and instructs the display control 17 to assign thecaptured image data and the display data to respective display areas ofthe screen to be displayed. More specifically, the display 130 of thefirst terminal 3110 aa switches the screen of FIG. 12 to the screen ofFIG. 13. Referring to FIG. 13, the display data received from the firstinformation providing apparatus 30 a is displayed in the first displayarea, and the captured image data of the first and second terminals 3110aa and 3110 ca are respectively displayed in the second display areas.

At S3807, the display control 17 of the first terminal 3110 aa refers tothe event flag table 3124 to set the display control flag to “SHARED”according to the “distribution start event”, and sends notice includingthe display control flag “SHARED” to the first information providingapparatus 30 a.

At S3808, the display control 34 of the first information providingapparatus 30 a refers to the transitional change table of FIG. 37A todetermine whether display of the first menu 401 is changed according tothe value of display control flag.

In this example, as illustrated in FIG. 39B, the first informationproviding apparatus 30 a receives the display control flag “SHARED”,while the “start sharing” button is being displayed. In such case, atS3809, the display control 34 changes display of the first menu 401 suchthat the first menu 401 displays the “stop sharing” button, for example,as illustrated in FIG. 39C.

At S3810, the display control 34 causes the second menu 402 to displaythe message “This display is shared”, according to the display controlflag “SHARED”, for example, as illustrated in FIG. 39C.

At S3811, the relay device 40 sends notice including the “distributionstart from another event” to the second terminal 3110 ca, and startstransmitting the display data to the second terminal 3110 ca. The relaydevice 40 may apply processing to the display data received from thefirst terminal 3110 aa so as to change image quality of the displaydata, before transmitting the display data to the second terminal 3110ca.

When the second terminal 3110 ca receives the “distribution start fromanother event”, at S3812, the second terminal 3110 ca determines whetherto request the relay device 40 to stop distribution of the display datareceived from the second information providing apparatus 30 c. Thisprocess is needed when the second terminal 3110 ca is distributing thedisplay data received from the second information providing apparatus 30c to the other terminal. In such case, since only the display datareceived from one information providing apparatus 30 is shared at atime, this process of determining which display data is to be shared isperformed. In this example, it is determined that the request forstopping distribution of the display is not necessary, as the sharedflag value is set to “UNSHARED”.

At S3813, the location data selector 3125 of the second terminal 3110 carefers to the event flag table 3124 to set the shared flag value to“SHARED”, based on the received “distribution start from another event”.

At S3814, the location data selector 3125 of the second terminal 3110 caselects the location data number “2” in the location data managementtable 3123 using the shared flag “SHARED”, and instructs the displaycontrol 17 to assign the captured image data and the display data torespective display areas of the screen to be displayed. As describedabove referring to S3806, the display 130 of the second terminal 3110 caswitches the screen of FIG. 12 to the screen of FIG. 13.

At S3815, the display control 17 of the second terminal 3110 ca refersto the event flag table 3124 to set the display control flag to“SHARED_ANOTHER” according to the “distribution start from anotherevent”, and sends notice including the display control flag “SHAREDANOTHER” to the second information providing apparatus 30 c.

At S3816, the display control 34 of the second information providingapparatus 30 c refers to the transitional change table of FIG. 37A todetermine whether display of the first menu 401 is changed according tothe value of display control flag.

In this example, as illustrated in FIG. 38B, the second informationproviding apparatus 30 c receives the display control flag“SHARED_ANOTHER”, while the “start sharing” button is being displayed.In such case, at S3816, the display control 34 does not change displayof the first menu 401 such that the first menu 401 continuously displaysthe “start sharing” button, for example, as illustrated in FIG. 39D.

At S3817, the display control 34 causes the second menu 402 to displaythe message “The other display is shared”, according to the displaycontrol flag “SHARED_ANOTHER”, for example, as illustrated in FIG. 39D.

The screen of FIG. 39D is displayed when the second terminal 3110 cadisplays the display data received from the first information providingapparatus 30 a via the first terminal 3110 aa. The first menu 401displays therein the “start sharing” button. The second menu 402displays therein the message “The other display is shared”.

As described above, when the user instructs to share the display databeing displayed at the first information providing apparatus 30 a viathe first terminal 3110 aa, the first information providing apparatus 30a changes the “start sharing” button to the “end sharing” button, andchanges the message “Not shared” to the “This display is shared”. Thesecond information providing apparatus 30 ca starts receiving thedisplay data from the first information providing apparatus 30 a via thefirst terminal 3110 aa. The second information providing apparatus 30 cacontinues to display the “start sharing” button, but changes the message“Not shared” to the “The other display is shared”. The user at each siteis able to start sharing the display data at its own site by selectingthe first menu 401. The user is able to instantly recognize whether thedisplay data at its own site is being shared by the other terminals3110, by looking at the shared state information being displayed in thesecond menu 402.

Referring now to FIG. 40, operation of switching the display data to beshared is explained according to an example embodiment of the presentinvention. In this example, it is assumed that the user at the secondinformation providing apparatus 30 c instructs the second terminal 3110ca to share the display data being displayed on the display 306, whenthe display data received from the first information providing apparatus30 a is being shared as described above referring to FIG. 38. Morespecifically, the display 130 of the first terminal 3110 aa and thedisplay 130 of the second terminal 3110 ca each display the screen ofFIG. 13. The first information providing apparatus 30 a displays thescreen of FIG. 39C on the display 306. The second information providingapparatus 30 c displays the screen of FIG. 39D on the display 306.

FIG. 40 is a data sequence diagram illustrating operation of controllingdisplay of a screen at the terminal 3110 and a screen at the informationproviding apparatus 30, performed by the transmission system of FIG. 31,according to an example embodiment of the present invention.

S4001, S4002, S4003, and S4011 are performed in a substantially similarmanner as described above referring to S3801, S3802, S3803, and S3811 ofFIG. 38, except that the second information providing apparatus 30 crequests the second terminal 3110 ca to start sharing the display data.

When the first terminal 3110 aa receives the “distribution start fromanother event”, at S4012, the display control 17 of the first terminal3110 aa determines whether to request the relay device 40 to stopdistribution of the display data received from the first informationproviding apparatus 30 a.

Since the shared flag value “SHARED” is set for the first terminal 3110aa, at S4013, the display control 17 requests the relay device 40 tostop distribution of the display data received from the firstinformation providing apparatus 30 a. The relay device 40 stopstransmission of the display data. In this example, since the relaydevice 40 receives the distribution start request from the secondterminal 3110 ca at substantially the same time, the relay device 40does not generate the “distribution end event”, even through thedistribution end request is received from the first terminal 3110 aa.

At S4014, the display control 17 of the first terminal 3110 aa requeststhe first information providing apparatus 30 a to stop transmission ofthe display data, in response to the “distribution start from anotherevent”. In this manner, the display data to be shared is limited to thedisplay data received from one site. In alternative to sending thedistribution end request, the first terminal 3110 aa may send thedisplay control flag “SHARED_ANOTHER” to the first information providingapparatus 30 a to request for the change in state of sharing the displaydata.

At S4015, the display data communicator 36 of the first informationproviding apparatus 30 a stops transmission of the display data.

At S4016, the location data selector 3125 of the first terminal 3110 aarefers to the event flag table 3124 to set the shared flag value to“SHARED”, according to the “distribution start from another event”.

At S4017, the location data selector 3125 of the first terminal 3110 aaselects the location data number “2” in the location data managementtable 3123 using the shared flag “SHARED”, and instructs the displaycontrol 17 to assign the captured image data and the display data torespective display areas of the screen to be displayed.

At S4018, the display control 17 of the first terminal 3110 aa refers tothe event flag table 3124 to set the display control flag to“SHARED_ANOTHER” according to the “distribution start from anotherevent”, and sends notice including the display control flag“SHARED_ANOTHER” to the first information providing apparatus 30 a.

At S4019, the display control 34 of the first information providingapparatus 30 a refers to the transitional change table of FIG. 37A todetermine whether display of the first menu 401 is changed according tothe value of display control flag.

In this example, the first information providing apparatus 30 a receivesthe “SHARED_ANOTHER”, while the “stop sharing” button is beingdisplayed. In such case, at S4020, the display control 34 changesdisplay of the first menu 401 such that the “start sharing” button isdisplayed.

At S4021, the display control 34 causes the second menu 402 to displaythe message “The other display is shared”, according to the displaycontrol flag “SHARED_ANOTHER”, for example, as illustrated in FIG. 39D.

When the second terminal 3110 ca receives the distribution stat event atS4004, at S4005, the second terminal 3110 ca refers to the event flagtable 3124 to set the shared flag value to “SHARED”.

At S4006, the location data selector 3125 of the second terminal 3110 caselects the location data number “2” in the location data managementtable 3123 using the shared flag “SHARED”, and instructs the displaycontrol 17 to assign the captured image data and the display data torespective display areas of the screen to be displayed. In this example,although the location data selector 3125 selects the location datanumber “2” at S3814 of FIG. 38, the location data selector 3125 selectsthe location data number “2”, again, according to the shared flag value“SHARED”.

At S4007, the display control 17 of the second terminal 3110 ca refersto the event flag table 3124 to set the display control flag to “SHARED”according to the “distribution start event”, and sends notice includingthe display control flag “SHARED” to the second information providingapparatus 30 c.

At S4008, the display control 34 of the second information providingapparatus 30 c refers to the transitional change table of FIG. 37A todetermine whether display of the first menu 401 is changed according tothe value of display control flag.

In this example, as illustrated in FIG. 39D, the second informationproviding apparatus 30 c receives the display control flag “SHARED”,while the “start sharing” button is being displayed. In such case, atS4009, the display control 34 changes display of the first menu 401 suchthat the first menu 401 displays the “stop sharing” button, for example,as illustrated in FIG. 39C.

At S4010, the display control 34 causes the second menu 402 to displaythe message “This display is shared”, according to the display controlflag “SHARED”, for example, as illustrated in FIG. 39C.

As described above, when the operation of FIG. 40 is completed, thedisplay 306 of the first information providing apparatus 30 a displaysthe screen of FIG. 39D, and the display 306 of the second informationproviding apparatus 30c displays the screen of FIG. 39C. At the firstinformation providing apparatus 30 a, the menu 401 changes the “stopsharing” button to the “start sharing” button, and the menu 402 changesthe message “This display is shared” to the message “The other displayis shared”. At the second information providing apparatus 30 c, the menu401 changes the “start sharing” button to the “stop sharing” button, andthe menu 402 changes the message “The other display is shared” to themessage “This display is shared”.

As described above referring to S4014, the first information providingapparatus 30 a, which is transmitting the display data to be shared,stops transmission of the display data in response to the “distributionstart from another event” that is received from the relay device 40.Accordingly, the display data received from one site is shared at atime.

Referring now to FIG. 41, operation of determining whether to requestthe relay device 40 to stop distribution of the display data, performedby the terminal 3110 when the “distribution start from another event” isreceived from the relay device 40, is explained according to an exampleembodiment of the present invention. The operation of FIG. 41 may beperformed at S3812 of FIG. 38, or at S4012 of FIG. 40.

At S4101, the display control 17 of the terminal 3110 determines whetherthe “distribution start from another event” is received at the terminal3110. When it is determined that the “distribution start from anotherevent” is received (“YES” at S4101), the operation proceeds to S4102.When it is determined that the “distribution start from another event”is not received (“NO” at S4101), the operation ends.

At S4102, the display control 17 determines whether the shared flag isset to “SHARED”. When the shared flag “SHARED” is set, the display dataof the information providing apparatus 30 connected to the terminal 3110or to the other terminal 3110, which is received from the relay device40, is being distributed among the terminals 10. In order to respond tothe “distribution start from another event”, the terminal 3110 has tochange the state of sharing the display data.

When it is determined that the shared flag value is set to “SHARED”(“YES” at S4102), the operation proceeds to S4103. At S4103, the displaycontrol 17 requests the relay device 40 to stop transmission of thedisplay data. In response to the distribution end request, the relaydevice 40 stops transmission of the display data to the terminal 3110that sends the distribution end request, and the operation ends.

In the above-described example case of S3812 (FIG. 38), the displaycontrol 17 determines that there is no need to send the distribution endrequest, as the value of shared flag is “UNSHARED”. In theabove-described example case of S4012 (FIG. 40), the display control 17determines to send the distribution end request, based on the sharedflag “SHARED”.

Referring now to FIG. 42, operation of determining whether to transmitthe “distribution end event” or the “distribution end from anotherevent” to the terminal 3110, performed by the relay device 42 when thedistribution end request is received from the terminal 3110, accordingto an example embodiment of the present invention. With the eventreflecting the updated status, each terminal 3110 is able to change thevalue of display flag or the value of display control flag. Theoperation of FIG. 42 may be performed at S4013 of FIG. 40.

At S4201, the relay device 40 stops distribution of the display dataaccording to the distribution end request received from the terminal3110.

At S4202, the relay device 40 determines whether the display data isstill being transmitted to one or more terminals 3110 other than theterminal 3110 that sends the distribution end request. Morespecifically, the relay device 40 determines whether the display data,which is received from the terminal 3110, is transmitted to the otherterminals 3110.

When it is determined that the display data is still being transmittedto the other terminals 3110 (“YES” at S4202), the relay device 40determines that distribution of the display data needs to be completed,and the operation ends without sending the “distribution end event”.

When it is determined that the display data is not transmitted to theother terminals 3110 (“NO” at S4202), the relay device 40 determinesthat the distribution of the display data is completed, and theoperation proceeds to S4203.

At S4203, the relay device 40 sends notice including the “distributionend event” to the terminal 3110 that sends the distribution end request,and notice including the “distribution end from another event” to theother communicating terminals 3110. With the “distribution end event” orthe “distribution end from another event”, the terminal 3110 is able toupdate the value of display flag and the value of display control flag.

As described above, when the display data is still being transmitted,the terminal 3110 continuously display the display data while displayingthe menu based on the “SHARED” shared flag. When the display data is nottransmitted, the terminal 3110 changes the shared flag value to“UNSHARED” to change display of the menu based on the “UNSHARED” sharedflag.

Referring now to FIG. 43, operation of stopping transmission of thedisplay data received from the second information providing apparatus 30c via the second terminal 3110 ca, performed by the transmission systemof FIG. 31, is explained according to an example embodiment of thepresent invention. In this example, it is assumed that the user at thesecond information providing apparatus 30 c instructs the secondterminal 3110 ca to stop sharing the display data being displayed on thedisplay 306, when the display data received from the second informationproviding apparatus 30 c is being shared as described above referring toFIG. 40.

At S4301, the operation input 33 of the second information providingapparatus 30 c receives a user instruction for selecting the “stopsharing” button of the first menu 401, which is displayed on the display306.

At S4302, the display data communicator 36 sends notice indicating theuser instruction for stopping transmission of the display data, to thesecond terminal 3110 ca.

At S4303, the display control 17 of the second terminal 3110 ca requeststhe relay device 40 to stop transmitting the display data received fromthe second information providing apparatus 30 c. The relay device 40determines whether to send notice including the “distribution end event”to each of the communicating terminals 3110 as described above referringto FIG. 42.

At S4304, the relay device 40 sends notice including the “distributionend event” to the second terminal 3110 ca. At S4313 (S4203 of FIG. 42),the relay device 40 sends notice including the “distribution end fromanother event” to the first terminal 3110 aa.

When the “distribution end event” is received, at S4305, the displaycontrol 17 of the second terminal 3110 ca requests the secondinformation providing apparatus 30 c to stop transmission of the displaydata.

At S4306, the display data communicator 36 stops transmission of thedisplay data. Alternatively, the display data communicator 36 of thesecond information providing apparatus 30 c may stop transmission of thedisplay data at S4302, right after the user instruction for stoppingsharing of the display data is received at S4301.

At S4307, the display control 17 of the second terminal 3110 ca refersto the event flag table 3124 of FIG. 36 to set the shared flag value to“UNSHARED”.

At S4308, the location data selector 3125 of the second terminal 3110 caselects the location data number “1” in the location data managementtable 3123, which is associated with the shared flag value “UNSHARED”.The display control 17 assigns the captured image data to respectivedisplay areas of a screen to be displayed, as illustrated in FIG. 12.

At S4309, the display control 17 of the second terminal 3110 ca refersto the event flag table 3124 to set the display control flag to“UNSHARED” according to the “distribution end event”, and sends noticeincluding the display control flag “UNSHARED” to the second informationproviding apparatus 30 c.

At S4310, the display control 34 of the second information providingapparatus 30 c refers to the transitional change table of FIG. 37A todetermine whether display of the first menu 401 is changed according tothe value of display control flag.

In this example, the second information providing apparatus 30 creceives the display control flag “UNSHARED”, while the “stop sharing”button is being displayed. In such case, at S4311, the display control34 changes display of the first menu 401 such that the first menu 401displays the “start sharing” button.

At S4312, the display control 34 causes the second menu 402 to displaythe message “Not shared”, according to the display control flag“UNSHARED”.

S4314 to S4316 are performed in a substantially similar manner asdescribed above referring to S4307 to S4309.

When the “distribution end from another event” is received, at S4314,the display control 17 of the first terminal 3110 aa refers to the eventflag table 3124 of FIG. 36 to set the event flag value to “UNSHARED”based on the “distribution end from another event”. Since the displaydata is not transmitted, the relay device 40 does not have to requestthe first terminal 3110 aa to stop transmission of the display data.

At S4315, the location data selector 3125 of the first terminal 3110 aaselects the location data number “1” in the location data managementtable 3123, which is associated with the shared flag value “UNSHARED”.The display control 17 assigns the captured image data to respectivedisplay areas of a screen to be displayed, as illustrated in FIG. 12.

At S4316, the display control 17 of the first terminal 3110 aa refers tothe event flag table 3124 to set the display control flag to “UNSHARED”according to the “distribution end from another event”, and sends noticeincluding the display control flag “UNSHARED” to the first informationproviding apparatus 30 a.

At S4317, the display control 34 of the first information providingapparatus 30 a refers to the transitional change table of FIG. 37A todetermine whether display of the first menu 401 is changed according tothe value of display control flag.

In this example, the first information providing apparatus 30 a receivesthe display control flag “UNSHARED”, while the “start sharing” button isbeing displayed. In such case, the display control 34 continues todisplay the “start sharing” button.

At S4318, the display control 34 causes the second menu 402 to displaythe message “Not shared”, according to the display control flag“UNSHARED”.

As described above, when the operation of FIG. 42 is completed, thedisplays 306 of the first information providing apparatus 30 a and thesecond information providing apparatus 30 c each display the screen ofFIG. 39B. At the first information providing apparatus 30 a, the menu401 continues to display the “start sharing” button, but the menu 402changes the message “The other display is shared” to the message “Notshared”. At the second information providing apparatus 30 c, the menu401 changes the “stop sharing” to the “start sharing”, and the menu 402changes the message “This display is shared” to the message “Notshared”.

The management system 50 and the program providing system 90 may be eachimplemented by a single computer. Alternatively, any number of parts,functions, or modules of the management system 50 and the programproviding system 90 may be classified into a desired number of groups tobe carried out by a plurality of computers. In case the programproviding system 70 is implemented by the single computer, the programto be provided by the program providing system 70 may be transmitted,one module by one module, after dividing into a plurality of modules, ormay be transmitted at once. In case the program providing system 90 isimplemented as a plurality of computers, each computer may transmit eachmodule that is stored in its memory, after the program is divided into aplurality of modules.

Further, in this example, the terminal 10 may be communicated in variousways. For example, at least two different terminals 10 that are locatedat different rooms in the same office, or at least two differentterminals 10 that are located at different offices that are remotelylocated from one another, may communicate with one another. In anotherexample, at least two different terminals 10 that are located in thesame room may communicate with one another. In another example, oneterminal 10 that is located indoor and another terminal 10 that islocated outdoor, or at least two different terminals 10 that are bothlocated outdoor, may communicate with one another. When the terminal 10is located outdoor, the terminal 10 communicates with the other terminal10 through a wireless network such as a wireless network designed for amobile phone.

Further, in the above-described examples, the transmissions system 1 isimplemented as a videoconference system for use at offices. Otherexamples of use of the transmission system 1 include, but not limitedto, meetings, casual conversation among family members or friends, anddistribution of information in one direction.

Numerous additional modifications and variations are possible in lightof the above teachings. It is therefore to be understood that within thescope of the appended claims, the disclosure of the present inventionmay be practiced otherwise than as specifically described herein.

With some embodiments of the present invention having thus beendescribed, it will be obvious that the same may be varied in many ways.Such variations are not to be regarded as a departure from the spiritand scope of the present invention, and all such modifications areintended to be included within the scope of the present invention.

For example, elements and/or features of different illustrativeembodiments may be combined with each other and/or substituted for eachother within the scope of this disclosure and appended claims.

Further, any of the above-described devices or units can be implementedas a hardware apparatus, such as a special-purpose circuit or device, oras a hardware/software combination, such as a processor executing asoftware program.

Further, as described above, any one of the above-described and othermethods of the present invention may be embodied in the form of acomputer program stored in any kind of storage medium. Examples ofstorage mediums include, but are not limited to, flexible disk, harddisk, optical discs, magneto-optical discs, magnetic tapes, nonvolatilememory cards, ROM (read-only-memory), etc.

Alternatively, any one of the above-described and other methods of thepresent invention may be implemented by ASIC, prepared byinterconnecting an appropriate network of conventional componentcircuits or by a combination thereof with one or more conventionalgeneral purpose microprocessors and/or signal processors programmedaccordingly.

The present invention can be implemented in any convenient form, forexample using dedicated hardware, or a mixture of dedicated hardware andsoftware. The present invention may be implemented as computer softwareimplemented by one or more networked processing apparatuses. The networkcan comprise any conventional terrestrial or wireless communicationsnetwork, such as the Internet. The processing apparatuses can compromiseany suitably programmed apparatuses such as a general purpose computer,personal digital assistant, mobile telephone (such as a WAP or3G-compliant phone) and so on. Since the present invention can beimplemented as software, each and every aspect of the present inventionthus encompasses computer software implementable on a programmabledevice. The computer software can be provided to the programmable deviceusing any storage medium for storing processor readable code such as afloppy disk, hard disk, CD ROM, magnetic tape device or solid statememory device.

The hardware platform includes any desired kind of hardware resourcesincluding, for example, a central processing unit (CPU), a random accessmemory (RAM), and a hard disk drive (HDD). The CPU may be implemented byany desired kind of any desired number of processor. The RAM may beimplemented by any desired kind of volatile or non-volatile memory. TheHDD may be implemented by any desired kind of non-volatile memorycapable of storing a large amount of data. The hardware resources mayadditionally include an input device, an output device, or a networkdevice, depending on the type of the apparatus. Alternatively, the HDDmay be provided outside of the apparatus as long as the HDD isaccessible. In this example, the CPU, such as a cache memory of the CPU,and the RAM may function as a physical memory or a primary memory of theapparatus, while the HDD may function as a secondary memory of theapparatus.

In one example, the present invention may reside in an informationproviding apparatus including: a memory; communicating means for sendingan instruction to an image forming apparatus to cause the image formingapparatus to form an image to generate image data and transmit the imagedata to the information providing apparatus; storing means for storingthe received image data in a predetermined memory area of the memory;and controlling means for generating management information indicatingan association between identification information identifying the imagedata and the memory area to which the image data is stored, themanagement information being stored in the memory. The communicatingmeans transmits the image data stored in the memory area to atransmission terminal to cause the transmission terminal to share theimage data with the counterpart transmission terminal.

Accordingly, the image data formed by the image forming apparatus can beeasily shared among the transmission terminals.

For example, the memory corresponds to the memory 38 (FIG. 5), which maybe implemented by any desired memory such as the ROM 302, RAM 303, HD304, or the recording medium 310. The communicating means corresponds tothe NFC transmit/receive 31. The storing means corresponds to the memorycontrol 37 and the memory 38, which may be implemented by a readingdevice such as the HD 304 or the medium drive 311 that may operate incooperation with any desired memory. The controlling means correspondsto the file controller 39, which may be implemented by the CPU 301.

In another example, the management information includes, for each of oneor more files of the image data stored in the memory, identificationinformation for identifying a specific file of the image data andinformation indicating the predetermined memory area to which thespecific file of the image data is stored. The information providingapparatus further includes means for displaying a list of theidentification information of the one or more files of the image data tothe user for selection by the user, based on the management information.

The communicating means transmits the image data specified by theidentification information being displayed and selected by the user tothe transmission terminal.

The communicating means includes first communicating means and secondcommunicating means. The first communicating means establishes firstcommunication with the image forming apparatus based on firstcommunication standards as the information providing apparatus isbrought into close proximity to the image forming apparatus, andreceives first connection settings information from the image formingapparatus. The second communicating means establishes secondcommunication with the image forming apparatus based on secondcommunication standards using the first connection settings information.The second communication provides a communication range that is widerthan a communication range of the first communication. The secondcommunicating means receives the image data from the image formingapparatus based on the second communication standards.

The first communicating means establishes the first communication withthe transmission terminal based on the first communication standards asthe information providing apparatus is brought into close proximity tothe transmission terminal or the transmission terminal is brought intoclose proximity to the information providing apparatus, and receivessecond connection settings information from the transmission terminal.The second communicating means establishes the second communication withthe transmission terminal based on the second communication standardsusing the second connection settings information, and transmits theimage data to the transmission terminal based on the secondcommunication standards.

For example, the first communication may be near field communication ornon-contact IC communication, such as the NFC communication based on theNFC communication standards. The second communication may be wirelesscommunication such as the Bluetooth communication based on the Bluetoothcommunication standards. The first communicating means corresponds tothe NEC transmit/receive 31, which may be implemented by the firstcommunication interface 312. The second communicating means correspondsto the Bluetooth transmit/receive 32, which may be implemented by thesecond communication interface 313.

In one example, the present invention may reside in a transmissionsystem including an image forming apparatus, an information providingapparatus, and a transmission terminal. The image forming apparatusforms an image to generate image data according to an instructionreceived from the information providing apparatus, and sends the imagedata to the information providing apparatus. The information providingapparatus includes: a memory; communicating means for sending theinstruction to the image forming apparatus; storing means for storingthe received image data in a predetermined memory area of the memory;and controlling means for generating management information indicatingan association between identification information identifying the imagedata and the memory area to which the image data is stored, themanagement information being stored in the memory. The communicatingmeans transmits the image data stored in the memory area to atransmission terminal. The transmission terminal receives the image datafrom the information providing apparatus, and distributes the image datato the counterpart transmission terminal as data to be shared.

In one example, the present invention may reside in a method, performedby an information providing apparatus, the method including: sending aninstruction to an image forming apparatus to cause the image formingapparatus to form an image to generate image data and transmit the imagedata to the information providing apparatus; storing the received imagedata in a predetermined memory area of a memory; generating managementinformation indicating an association between identification informationidentifying the image data and the memory area to which the image datais stored, the management information being stored in the memory; andtransmitting the image data stored in the memory area to a transmissionterminal as data to be shared with the counterpart transmissionterminal.

In one example, the present invention may reside in a non-transitoryrecording medium storing a plurality of instructions which, whenexecuted by a processor, cause the processor to perform a methodincluding: sending an instruction to an image forming apparatus to causethe image forming apparatus to form an image to generate image data andtransmit the image data to the information providing apparatus; storingthe received image data in a predetermined memory area of a memory;generating management information indicating an association betweenidentification information identifying the image data and the memoryarea to which the image data is stored, the management information beingstored in the memory; and transmitting the image data stored in thememory area to a transmission terminal as data to be shared with thecounterpart transmission terminal.

What is claimed is:
 1. An information providing apparatus, comprising: acommunication interface to send an image forming instruction to an imageforming apparatus to cause the image forming apparatus to form an imageto generate image data and transmit the image data to the informationproviding apparatus; a memory to store the image data received from theimage forming apparatus in a memory area; and a processor to storeidentification information that uniquely identifies the image data andinformation indicating the memory area to which the image data is storedin association with each other to generate management information in thememory, and to use the management information to specify the image datato be transmitted to a transmission terminal.